Re: [問題] kubuntu x86_64編譯錯誤 變數重複定義

作者: knko (12345)   2021-12-17 17:45:37
我試過pmake clean install、bmake clean install,同時也加入選項 -fcommon,pmake -
fcommon clean install,我找到bmake的手冊,bmake 的 -f 選項是用於makefile的選擇,
而我最後試了 -i 參數成功,感謝幫忙
※ 引述《holishing ( )》之銘言
: 新版的 gcc 會嚴格限制 multiple definition
: 所以在 Ubuntu Focal 或 Debian Bullseye 會遇到編譯錯誤 (以前只會警告)
: 兩種解法:
: 第一種是在編譯參數加上 -fcommon (讓它允許重複定義)
: 第二種是把重複定義刪掉,例如參考以下修改:
: https://github.com/bbsdocker/imageptt/blob/87c0ec3c/multipledef.patch
: 應該就可以編譯過了
: ※ 引述《knko ()》之銘言:
: :
: :
: :
: :
: : 我在使用kubuntu(x86_64)編譯此套軟體時執行pmake all install時發現錯誤,原因
: 是/u
: : sr/bin/ld: /tmp/writemoney-42e226.o:/home/bbs/pttbbs/util/writemoney.c:5: mu
: ltip
: : le definition of `now'; util_var.o:/home/bbs/pttbbs/util/../mbbsd/var.c:374:
: fir
: : st defined here,是於pttbbs.conf中有加入#define SHMALIGNEDSIZE (1048576*4)
: : #define TIMET64,似乎是爲重複定義但是我不確定是軟體還是我設定的問題,我使用
: 的版
: : 本最後的編輯是https://github.com/ptt/pttbbs/commit/576513c502a9bf5fcfa08ae52
: ee94
: : ed0c67be608
: :
: :
作者: holishing   2021-12-18 17:15:00
編譯參數不是這樣加, 找出 Makefile 以及 include 內容裡面的 CFLAGS / CPPFLAGS 後,再加你要加的編譯參數https://github.com/ptt/pttbbs/blob/787913/pttbbs.mk例如在上面連結的第 33 行末加上參數

Links booklink

Contact Us: admin [ a t ] ucptt.com