linker

    2熱度

    4回答

    構建相同的項目(沒有任何更改)生成二進制不同 exe文件:它們的一些小區域是不同的。空項目,版本信息(並在每個版本上自動遞增)被關閉。 爲什麼會發生?是否有可能使德爾福爲相同的項目生成二進制文件?

    1熱度

    1回答

    我一直在編碼一段時間,我一直認爲編譯的鏈接階段非常簡單,但最近我不得不爲應用程序添加一個插件系統,而且我碰到了不少編譯和運行時問題,由於我完全不瞭解這個問題。現在我的工作很好,在這個過程中學到了很多東西,但現在我知道我仍然有很多東西需要學習,我想更多地探討這個問題。所以我想知道是否有人在文章,博客文章或整個「代碼部分,符號,鏈接,動態/靜態庫...」業務方面有很好的指針。 我在Linux上使用gc

    36熱度

    3回答

    我有一個共享庫,我希望鏈接使用GCC的可執行文件。共享庫的非標準名稱不是libNAME.so形式,所以我不能使用通常的-l選項。 (它恰巧也是一個Python擴展,因此沒有'lib'前綴) 我能夠將路徑傳遞到庫文件直接到鏈接命令行,但這會導致庫路徑爲硬編碼到可執行文件中。 例如: g++ -o build/bin/myapp build/bin/_mylib.so 有沒有辦法鏈接到這個庫,而不

    2熱度

    4回答

    我在Visual Studio中爲我甚至不直接調用的方法收到了一大堆鏈接器錯誤。我是白天的Java開發人員,但我有一個項目需要在C++中完成,目的是在Windows機器上運行。因此,我被卡在了Visual Studio中。 Bascally,我有一個os項目,我添加了一個存取方法。我將該項目編譯爲.lib文件(編譯並鏈接正常)。 然後我有我自己的項目,使用該庫。我在Project-> Proper

    1熱度

    3回答

    我想在Windows上使用MSVC 6(retro!)構建一個共享庫(DLL),並且我需要解決一個特殊的鏈接問題。我的共享庫必須訪問一些全局狀態,由加載應用程序控制。 概括地說,我有什麼是這樣的: application.c: static int g_private_value; int use_private_value() { /* do something with g_pr

    0熱度

    2回答

    我使用Visual C++ 2005 Express版本,並得到下面的連接錯誤: 19>mylib1.lib(mylibsource1.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall std::exception::_Raise(void)const "

    2熱度

    3回答

    我有一個庫,我開發。當我將它部署到一臺機器上時,相應的libA.so和libA-X.Y.Z.so被放在/ usr/lib(X.Y.Z是版本號)中。 現在我開發一個庫B,它使用A.當我鏈接B時,我使用標誌-lA。那麼,「LDD libB.so」給我: (...) libA-X.Y.Z.so => /usr/lib/libA-X.Y.Z.so (...) 我的問題是,當我釋放A(XYZZ)的新

    13熱度

    3回答

    我有一些舊的C代碼,我想結合一些C++代碼。 曾經有過的C代碼如下包括: #include <windows.h> #include <stdio.h> #include <string.h> #include "mysql.h" 現在我要把它用C++使用的iostream這樣的: #include <windows.h> #include <stdio.h> #include <s

    7熱度

    2回答

    我很新的C++構建流程,我想切換到使用部分鏈接我的圖書館,而不是創建ar檔案。我希望能夠在不可避免的最終編譯步驟中減少鏈接時間,並且我想部分鏈接一些庫可以節省我在最後一步鏈接所有內容的時間。 就是我描述可能嗎?我認爲它應該是沿線ld -Ur -o mylib.o [components]。有沒有重要的構建考慮,我沒有考慮到?

    8熱度

    5回答

    我最近在這裏讀到一個關於靜態和動態鏈接的問題,這讓我想起了一些關於它的問題。從那篇文章中,我可以看到技術上的差異(包括直接的目標文件內容,而不僅僅是指向它),但我想更多地瞭解這樣做的優缺點。 前段時間,我的一位編程了好幾年的朋友感嘆C#沒有靜態鏈接,並說這是他期望未來版本最需要的功能。不幸的是,我是一個新手,並沒有真正理解這個說法。 感謝您的任何啓示!