大家好 我有聯繫Tcl和Tk靜態如下,同時與 GCC連接443 /xxx/tcl_libs/8.5.9/lib/libtk8.5.a/XXX/tcl_libs/8.5.9/lib目錄/ libtcl8.5.a問題在動態上TCL庫鏈接
但是當我試圖動態如下 -L/xxx/tcl_libs/8.5.9/lib/ -ltcl8.5 -L/xxx/tcl_libs/8.5.9/lib/ -ltk8.5
掛靠我收到以下錯誤
/tools/linux64/gcc-4.4.3/bin/../lib/gcc/x86_64-unknown-linux-gnu/ 4.4.3/../../../../x86_64-unknown-linux-gnu/bin/ld: tkMain.o: in function main:../../..//tkMain.c:33: error: undefined reference to 'TclInitSubsystems'
有一點,當我試圖鏈接tcl靜態tk動態它的作品。 I 通過ldd對其進行了檢查。 請幫忙。
這很奇怪。我無法在Tk 8.5.9源代碼樹(它是一個Tcl庫內部函數)中找到對該函數的任何引用。你確定你正在編譯正確的代碼嗎? – 2011-05-03 10:00:27
靜態鏈接工作正常 – SaurabhS 2011-05-03 10:02:36
靜態鏈接不能正確執行隱私規則。問題是Tk不應該直接調用這個函數。您編譯的代碼不是您鏈接的代碼。這是個壞消息。 – 2011-05-03 10:06:13