我目前正在使我的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
Run Code Online (Sandbox Code Playgroud)
这是一个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 …Run Code Online (Sandbox Code Playgroud) 我目前正在开发一个项目,虽然我可以通过添加到com.apple.sidebarlists.plist文件然后重新启动Finder来添加侧边栏项目,但我似乎无法知道如何使用其分配的自定义图标显示文件夹图标.
任何人都可以指向一个链接或解决方案,让我这样做?提前谢谢!
如果你这样做了,你介意分享你如何安装pyobjc吗?我试图通过安装PythonMac 2.5(通过py2app的独立包)和easy_installPyObjC来实现.我总是得到那些deprecated错误,主要是那些在dyld.h里面和内部声明的错误objc_inject.m.
我尝试从源代码编译,但仍然没有运气.
此外,当我在Snow Leopard下运行我的Leopard编译的PyObjC应用程序时,它有关于PyObjC的错误,第一次是它无法看到,Foundation或者AppKit第二次typestr是未知的.
谢谢,感谢您的回答.
假设我有这样的代码......
- (id) init {
...
self.myImage1 = [NSImage imageNamed:@"some_image_name"]; // setter retains
...
}
- (void) setStatusItemImage
{
[self.statusItem setImage:self.myImage1];
}
Run Code Online (Sandbox Code Playgroud)
我还想为状态项设置动画,因此我创建了6个"更新"状态项图标的变体,并将其循环到NSTimer上,目标方法与上面类似.问题是:
cocoa ×2
objective-c ×2
py2app ×2
finder ×1
macos ×1
nsimage ×1
nsstatusitem ×1
nstimer ×1
osx-leopard ×1
pyobjc ×1
python ×1
sidebar ×1