dlopen

    0熱度

    1回答

    我創建了一個庫來提供對另一個庫的訪問。 有問題的庫是供應商,所以不是每個人都應該訪問這個庫。 這樣做的一個解決方案是將該庫放在特定組(AIX)上,然後將可以使用它編譯的所有人都放在同一組中。 此解決方案在這裏不起作用,因爲有很多新人進出,編譯的用戶(執行此操作的進程)與可以訪問代碼的用戶不同。 我試圖歸檔的解決方案是。 每個應用程序在其目錄中都有一個模式。 /Aplications/Group/.

    0熱度

    1回答

    我目前正在將一個程序從MIPS平臺移植到Android ARM平臺。該程序有一個動態插件,這是一個共享的文件。該文件將訪問主程序的功能。 我的問題是,我怎麼能得到這樣的文件與未定義的引用鏈接? 我用谷歌搜索,發現在達爾文平臺上有「-undefined dynamic_lookup」標誌。 Android本機構建系統的類似方法是什麼?

    5熱度

    1回答

    我是這個領域的新手。我的筆記本電腦是Macbook air,軟件:OS X 10.8.5(12F45)。我正在運行一個代碼,它給了我以下錯誤: dlopen(/Users/ramesh/offline/build_icerec/lib/icecube/phys_services.so, 2): Library not loaded: /Users/ramesh/offline/build_icer

    0熱度

    2回答

    我試圖使這個OSX代碼(golfed爲便於討論)在Ubuntu Linux上工作。 cat >main.c <<EOF #include <stdio.h> #include <stdlib.h> #include <dlfcn.h> void provided_by_main() { puts("Hello main!"); } int main() { void *prov

    3熱度

    1回答

    假設我有一個庫--foo.so。當我構建我的二進制文件(需要這個庫)時,我可以(1)鏈接foo.so,或者,(2)在程序源代碼中,dlopen這個庫,然後調用該庫提供的函數 Is there當我從庫中調用函數時,(1)和(2)之間的任何性能差異?請注意,我知道會有不同的初始化特性(如dlopen的開銷,第一次使用符號的開銷等),但在穩定狀態下,兩種選擇都同樣快,還是更快? 謝謝。

    1熱度

    1回答

    我的主應用程序靜態鏈接到靜態庫A帶有函數ABC和我的動態庫xyz.dylib也靜態鏈接到具有相同函數ABC的相同靜態庫A.函數ABC使用全局定義的變量。 現在,當主應用程序在運行時使用dlopen加載xyz.dylib。初始化程序被調用,在那裏我調用了ABC函數。該函數使用ABC並使用主應用程序地址空間中的全局變量。

    2熱度

    1回答

    我使用dlopen在Linux上加載* .so插件,並且我想用mingw將插件功能移植到windows。有一個dlfcn-win32庫,它在原生windows DLL功能的基礎上增加了一個dlopen API,但是這並沒有規避Windows原生的侷限性,即在主可執行文件IIUC內不能引用符號的DLL。 一種替代方法是使用EDLL library,它可以在加載對象時通過共享對象中未鏈接的未解析符號模

    2熱度

    1回答

    getcwd(buff, 1024); 說當前跟隨工作路徑;我該怎麼辦? buff = "/home/online0227/my project/Tutorial/Tutorial 1 Device Seletion\0" 我試圖在Linux上使用 以下函數加載我.so文件,但他們都失敗。什麼是正確的路徑來描述我的.so文件的路徑? m_hSO = ::dlopen("..//..//..

    8熱度

    1回答

    我試圖得到一個ELF二進制文件的加載地址,but dlopen doesn't按預期方式工作: void *elf = (char *)dlopen (0, RTLD_NOW); printf ("%p\n", elf); sleep (100); 它打印0xb772d918,但是從/proc/1510/maps告訴,它並不指向dlfn二進制文件的加載地址,但ld-2.15.so, 080

    1熱度

    2回答

    我必須調用外部庫中的函數,其參數的類型和數量以及返回類型是未知的。我如何使用dlsym在C++中調用該函數? 編輯:我如何調用函數使用dlsym(),如果我得到返回類型和數據類型的參數作爲字符串。 例如:客戶端將func名稱,返回類型和參數數據類型發送到服務器。服務器使用dlopen()動態加載對應的。現在我怎樣才能使用dlsym調用func? 在此先感謝