動態鏈結時出現undefined symbol錯誤

2021-08-07 14:11:28 字數 672 閱讀 1631

有時候編譯生成程式時,會出現undefined symbol:*** 錯誤,比如編譯python的sqlite模組時,出現這樣的錯誤

可以使用nm命令,檢視依賴的庫是否含有這個***,以上面的編譯python的sqlite模組為例,

python編譯sqlite模組時依賴本地的sqlite,比如依賴/usr/local/lib/libsqlite3.so這個庫,出現了undefined symbol:sqlite3_set_authorizer

就可以使用命令:nm /usr/local/lib |grep sqlite3_set_authorizer

如果沒有任何輸出,則表明在這個libsqlite3.so中不存在sqlite3_set_authorizer函式或者變數(編譯libsqlite3.so時是否定義了sqlite_omit_authorization)

在cmakelists.txt檔案中

add_definitions(-dsqlite_amalgamation)

#add_definitions(-dsqlite_omit_authorization) #注釋掉這一行

add_definitions(-dsqlite_enable_load_extension)

還有可能就是sqlite庫和python的版本不匹配,python中用到了當前的sqlite庫沒有的函式。

去除點選鏈結時出現的虛線框

影象鏈結在被點選時會出現虛線框,即使鬆開了也仍然存在,在有的時候顯得不美觀。所以最好就把它給去掉 方法一ie下可使用其私有的html屬性 hidefoucs,在標籤的結構中加入hidefocus true 屬性。即 網而在 firfox 瀏覽器中則相對比較容易,直接給標籤 a 定義樣式 outlin...

載入時動態鏈結及執行時動態鏈結,譯自MSDN

當前目錄 系統目錄。通過getsystemdirectory 函式可以得到。16位系統目錄。沒有函式可以獲取該目錄,但它是被搜尋的。windows me 98 95 目錄不存在 windows目錄。通過getwindowsdirectory 即可得到。path環境變數中所列目錄。當應用程式呼叫loa...

鏈結時出現無法解析的外部符號排錯

鏈結時出現 無法解析的外部符號,錯誤資訊 cpp編譯出的符號 batviewdlg.obj error lnk2001 unresolved external symbol unsigned char stdcall getpwrcapabilities struct system power ca...