我正在製作一個基本的角色扮演遊戲。我想靜態地包含Boost庫,以便運行我的遊戲的人不需要擁有它們。我研究和查找的,所有你需要做的就是添加-static
到命令行編譯,所以我的命令是這樣的:與Boost和ncurses的靜態鏈接
$ g++ -static -o karthas *.o -lncurses -lmenu -lboost_system -lboost_filesystem
但顯然-static
是影響ncurses的。我遇到了一大堆錯誤,其中大部分都是對'SP'的未定義引用。
是否有可能只是做一個靜態鏈接到Boost而不是ncurses?我會怎麼做呢?
通常的動態鏈接工作嗎?你是否可以在沒有靜態鏈接的情況下構建和運行你的程序? – chrisaycock 2012-03-14 18:49:43
@chrisaycock是的,我的系統上有動態鏈接,因爲它安裝了bost庫。但我想要發生的是我能夠分發我的程序,而不需要用戶安裝boost庫。 – adamk33n3r 2012-03-14 20:12:02