dlopen

    9熱度

    1回答

    我所採取的分佈爲二進制LIB(.a)中和頭圖書館,寫了一些C++代碼反對,並希望在Python包裹起來的結果模塊。 我做這個here。 的問題是,在Mac OSX上導入此模塊(我試過10.5和10.6)時,我得到以下錯誤: dlopen(/Library/Python/2.5/site-packages/dirac.so, 2): Symbol not found: _DisposePtr

    4熱度

    1回答

    我在Android應用程序中使用JNI作爲本地c代碼。 我在android 2.0版本和ndkr3上構建這個應用程序,它工作正常。 現在,當我更改了Android SDK版本1.5和API版本3時,我遇到了無法打開庫libtest_demo.so的問題。 05-13 16:54:23.603: INFO/dalvikvm(1211): Unable to dlopen(/data/data/org

    10熱度

    2回答

    有沒有方法使用它的路徑來查找dylib的版本?我正在尋找一些與dlopen相同的參數。我已經看過NSVersionOfRunTimeLibrary,但是從我閱讀文檔看來,它看起來像獲取當前dylib的版本,而不是路徑中指定的版本。 謝謝它

    0熱度

    1回答

    bash-3.2# rails console /opt/local/lib/ruby1.9/1.9.1/irb/completion.rb:9:in `require': dlopen(/opt/local/lib/ruby1.9/1.9.1/i386-darwin10/readline.bundle, 9): Library not loaded: /opt/local/lib/libncu

    1熱度

    3回答

    我有一個應用程序可以利用在運行時使用dlopen加載的插件。每個插件定義一個函數來檢索使用通用結構定義的插件信息。類似的東西: struct plugin { char *name; char *app_version; int app_verion_id; char *plugin_version; int plugin_version_id;

    4熱度

    2回答

    我正在研究一個包含靜態stl容器類的類「A」的項目。這個類包含在我的主程序和一個.so文件中。該類使用默認(隱式,未聲明)的構造函數/析構函數。主程序使用dlopen()加載.so文件並在其析構函數中調用dlclose()。當glibc調用靜態類成員變量的析構函數時,程序在主退出後崩潰。問題似乎是,當調用dlclose()時,將調用靜態變量的析構函數,然後當main exits()glibc也調用

    1熱度

    1回答

    我知道使用dlopen和RLTD_NOLOAD可以找出共享對象是否已經加載。但是,如果鏈接程序鏈接到可執行文件並在應用程序啓動過程中由鏈接程序加載,這似乎不起作用。 我的意思是,讓我說我有mylib.so並加載它與dlopen。後來,如果我使用RLTD_NOLOAD製作dlopen,我會按預期得到句柄。 但是,如果我將mylib.so鏈接到應用程序(在makefile中爲-lmylib),則dlo

    13熱度

    4回答

    例如: void* sdl_library = dlopen("libSDL.so", RTLD_LAZY); void* initializer = dlsym(sdl_library,"SDL_Init"); 假設沒有錯誤,初始化將指向功能SD_Init在共享庫libSDK.so。 但是這需要知道符號「SDL_Init」存在。 是否有可能查詢庫的所有符號?例如,在這種情況下,它將返回SD

    3熱度

    1回答

    我有一個可疑來源庫,它被file識別爲32位可執行文件。但是,當我嘗試在32位CentOS 4.4機器上嘗試dlopen時,dlopen終止於SIGFPE。當然,如果二進制格式有問題,那麼dlopen應該處理錯誤? 所以問題是:什麼樣的問題可以導致dlopen發出SIGFPE?

    5熱度

    2回答

    我正在使用普通的X11應用程序。 默認情況下,我的應用只需要libX11.so和標準的gcc C和數學庫。 該應用程序可以擴展Xfixes,Xrender和ALSA音響系統的功能。 但是,這些(Xfixes,Xrender和ALSA)功能是可選的。 爲了實現這種行爲,我使用運行時加載,即libXfixes,libXrender和libasound應該是dlopen()。 因此,該應用程序可以在沒有