簡體   English   中英

將10.5(Leopard)的PyObjC應用程序編譯為xcode 10.6(Snow Leopard)

[英]Compiling a PyObjC application for 10.5 (Leopard) into xcode 10.6 (Snow Leopard)

我正在嘗試在10.5上部署一個在Xcode 3.2.X(Snow Leopard)上開發的PyObjC(或Cocoa-Python)應用程序,它在10.6系統上運行得非常好。

該應用程序不會在10.5上啟動;它會在啟動時崩潰,並顯示此錯誤消息(在崩潰報告中找到):

Dyld錯誤消息:未加載庫:/System/Library/Frameworks/Python.framework/Versions/2.6/Python引用自:/Users / myuser / Files / myApp.app / Constate / Mark / myApp原因:未找到圖像

似乎在某處Xcode硬編碼Versions / 2.6 python框架路徑(而不是將其設置為Versions / Current,例如)。

但是,我無法找到可以修改此鏈接路徑的位置以設置為當前(或2.5,可能是有條件的)...

您所看到的路徑很可能是您鏈接的Python框架版本的合法路徑。 這是最新版SnowLeopard(10.6.5)的正確路徑,至少是這樣。 您可能已經在Xcode項目中正確設置了框架的路徑。

如果我不得不猜測,我會說當你遇到這次崩潰時,你會在不同版本的Mac OS X上運行它,其中2.6版本的Python框架不存在。 要探索此問題,請嘗試導航到Python框架並列出您遇到此錯誤的系統上可用的版本:

cd /System/Library/Frameworks/Python.framework/Versions
ls -al

這給了什么輸出? 我猜它沒有顯示2.6版目錄。 您在運行此版本的Mac OS X? 您可能需要針對早期版本的系統編譯和鏈接您的應用程序,以使其在您看到此錯誤的任何系統上運行。

XCode有所謂的SDK,可以用來定位最近的Max OS X版本。

目前安裝的SDK可以在/ Developer / SDKs中找到。 可以從XCode DVD安裝其他SDK。

在使用XCode創建的項目中,可以通過以下方式選擇SDK。 打開獲取目標信息,在“架構”部分中找到“基本SDK”設置。 選擇您需要的SDK並重建。

例如,Mac OS X 10.5 SDK包含Python版本2.5和2.3,當前版本指向2.5。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM