[英]Compiling a PyObjC application for 10.5 (Leopard) into xcode 10.6 (Snow Leopard)
[英]Compiling a py2app working build for both Leopard and Snow Leopard?
我目前正在使我的PyObjC應用程序適用於Snow Leopard並且我成功編譯了一個獨立的應用程序。 我的問題是,如果出現這些錯誤,我如何使構建與Leopard兼容?
dyld: lazy symbol binding failed: Symbol not found: _fopen$UNIX2003
Referenced from: /Applications/MyApp.app/Contents/MacOS/MyApp
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: _fopen$UNIX2003
Referenced from: /Applications/MyApp.app/Contents/MacOS/MyApp
Expected in: /usr/lib/libSystem.B.dylib
這是一個Snow Leopard編譯的py2app應用程序。 另外,當我在Leopard上編譯時,另一方面,會發生以下錯誤:
Traceback (most recent call last):
File "/Users/jofell/client/dist/MyApp.app/Contents/Resources/__boot__.py", line 31, in <module>
_run('main.py')
File "/Users/jofell/client/dist/MyApp.app/Contents/Resources/__boot__.py", line 28, in _run
execfile(path, globals(), globals())
File "/Users/jofell/client/dist/MyApp.app/Contents/Resources/main.py", line 17, in <module>
from AppKit import *
File "AppKit/__init__.pyc", line 10, in <module>
File "Foundation/__init__.pyc", line 10, in <module>
File "CoreFoundation/__init__.pyc", line 17, in <module>
File "objc/_bridgesupport.pyc", line 129, in initFrameworkWrapper
File "objc/_bridgesupport.pyc", line 53, in _parseBridgeSupport
ValueError: Unknown typestr
2009-08-29 19:30:14.530 MyApp[445:903] MyApp Error
2009-08-29 19:30:14.534 MyApp[445:903] MyApp Error
An unexpected error has occurred during execution of the main script
任何幫助,將不勝感激。 提前致謝。
我最近這樣做了,訣竅是在Leopard安裝上構建一個獨立版本。
默認情況下,除非您安裝了Python的開源版本,否則py2app會創建一個半獨立應用程序,該應用程序具有操作系統文件的符號鏈接。
相反,如果您創建了應用程序的獨立版本,則解釋器和支持文件將嵌入到您的應用程序中,因此在運行應用程序的所有計算機上都是一致的。 這里提供了有關創建完全獨立應用程序的說明,但請注意博客的評論,因為在撰寫博客文章后,某些內容確實發生了變化。
如果你有你需要的特定庫你可以在setup.py文件中引用它們,或者你總是可以手動將它們添加到dylib目錄(這對我來說更容易,因為我需要更改啟動腳本而不想重新生成),但要確保使用32位庫(它將在Leopard上)。
由於兩者都在不同的架構(分別為32位和64位),我認為你必須創建2個不同的編譯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.