libtool

    0熱度

    1回答

    我創建了一個名爲foo的實例項目,其configure.ac是: AC_PREREQ([2.69]) AC_INIT([foo], [1.0.0], [[email protected]]) AC_CONFIG_SRCDIR([foo.cpp]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([foreign]) LT_INIT AC_P

    0熱度

    2回答

    我正在爲Debian GNU/Linux發行版構建一個共享庫,我擔心它不需要導出的內部函數的符號數量。由於該庫是使用autoconf/automake/libtool構建的,所以答案很簡單:我只需將-export-symbols libfoo.sym添加到libfoo_la_LDFLAGS,並只指定要在該文件中導出的符號。 但是,由於這涉及容易出錯的手動工作,我認爲必須有更好的方法。是否可以自動讀

    1熱度

    1回答

    我想配置autotooled項目中使用Linux Mint的存量自動工具來調用非標準 鏈接器(gold linker), 16/Ubuntu的13.10 我相信我會通過實現這一點: libtoolize -ing項目 運行./configure LD=/path/to/my/linker ... etc. 但是這已經ineffec略去。 libtoolize已成功。 後標準./configure;

    4熱度

    1回答

    我想向我的庫中添加多線程,所以我正在爲我的庫創建線程執行程序。爲此,我使用boost線程。 這是運行鏈接到庫中的測試用例時,我得到的錯誤: symbol lookup error: libmylibexample.so.0: undefined symbol: _ZTVN5boost6detail16thread_data_baseE 這是代碼行,導致該錯誤我的共享庫: MyNameSpace

    4熱度

    1回答

    在基於自動工具的項目中,我捆綁了另一個小型靜態庫,並以安全的方式將它鏈接到我的最終共享庫中(靜態是使用-fPIC等等)。最終應該沒有任何內部靜態庫存在的證據作爲構建過程的一部分,它的符號應該被「複製」到共享庫中。 最後一個條件肯定滿足,使用nm進行檢查,並且在共享庫上使用ldd時,在靜態庫中沒有顯示「需要」的ELF段依賴關係。但libtool的.la檔案文件是不同的故事:在那裏的dependenc

    2熱度

    1回答

    我寫a C library that builds using Libtool,我想只有建立在Cygwin的靜態庫。爲此,我放置了 if test "$target_os" = "cygwin"; then AC_DISABLE_SHARED fi 在我的configure.ac。 這確實禁止建立共同在Cygwin庫;然而,它也禁止在其他地方構建它們。我認爲這是因爲擴大AC_DIS

    3熱度

    1回答

    我想安裝MongoDB-C驅動程序的新更新,但似乎編譯邏輯上阻止了包含以前安裝在「/ usr/local」目錄中的libbson庫(#include <bson.h>) /」。 如何正確「鏈接」我的庫,以便同時使用#include <bson.h>和#include <mongoc.h>?

    1熱度

    1回答

    共享庫,我有兩個基於autotools的項目AAA和BBB: AAA是建立與 「--enable-靜態--disable共享」,用C語言編寫 所有代碼 BBB是一個動態庫,以及對AAA環節使用 「libBBB_la_LIBADD = /path/to/libAAA.a」 我越來越想要編譯BBB時,以下幾點: /usr/bin/ld: /usr/local/lib/libAAA.a(liboAAA_

    2熱度

    1回答

    我有一個項目與自動工具建立一個C++庫,包括與Boost.Python的Python綁定。 我的Boost.Python我的系統上的二進制文件,我想在本鏈接: /usr/lib/libboost_python-py27.so.1.49.0 沒有相應的.la文件,所以我想我可以在完整路徑庫添加到libtool的有類似於此命令: bash ./libtool --mode=link g++ -rp

    0熱度

    2回答

    對於我的項目(庫),我使用libtool和automake配置在linux主機下構建。該庫由一個C API以及一個可選的C++擴展組成。所以,既然 AC_PROG_CXX必須在全球範圍叫,我用automake的條件語句: *configure.ac*: AC_PROG_CC AC_PROG_CXX AM_PROG_AR LT_INIT ... some tests to figur