2010-03-05 118 views
0

我正在開發Mac OS X Cocoa應用程序並希望使用多個.dylib庫。如何將路徑設置爲駐留在我的應用程序文件夾某處的.dylib?如果路徑位於不同計算機上的不同目錄中,或根本不存在?在Cocoa應用程序中設置.dylib路徑的路徑

回答

1

它位於我的應用程序文件夾中的某個位置?

使用@rpath。 (或@executable_path。)請參閱man 1 dyld

如果路徑駐留在不同計算機上的不同目錄中,或根本不存在,該怎麼辦?

然後你的應用程序將無法加載。如果dylib不是必需的,則使用weak linking或在運行時用dlopen加載dylib。

+0

如何在使用dlopen時告訴用戶.dylib丟失? – Sney 2010-03-05 14:34:02

+0

如果dylib丟失或無效,'dlopen'將返回NULL。 (你可以用'fstat'來檢查文件是否存在...) – kennytm 2010-03-05 14:40:17