http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
我沒列出來的目錄可以不必修改:p
沒什麼意外的話,應該只需要改我列出來的那幾個 Makefile 就夠了
※ 引述《[email protected] (南洋大兜蟲)》之銘言:
> 感謝gaod大神的解答m(_ _)m
> 解決了一個問題了QQ
> 可是還剩下兩個Error
> 我試著也把其他資料夾加上 fPIC...就變成下面這樣了...
> 可以順便問一下為什麼要加上 -fPIC嗎= =a?
> 感激不盡>///<
> ranlib libdao.a
> gcc -o bguard bguard.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o bhttpd bhttpd.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o bmtad bmtad.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o bnntpd bnntpd.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o bpop3d bpop3d.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o gemd gemd.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -o xchatd xchatd.c -DBSD44 -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -s -L../lib -ldao -lcrypt
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c channel.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c bbslib.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c convcode.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c inntobbs.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c rec_article.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c nocem.c
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c history.c
> gcc -o innbbsd channel.o bbslib.o convcode.o inntobbs.o rec_article.o nocem.o history.o -s -L../lib -ldao
> gcc -O2 -pipe -I../include -fPIC -fomit-frame-pointer -Wunused -c bbslink.c
> gcc -o bbslink bbslink.o bbslib.o convcode.o inntobbs.o rec_article.o nocem.o history.o -s -L../lib -ldao
> make: cannot open PIC.
> *** Error code 2
> Stop in /home/bbs/src/maple.
> *** Error code 1
> Stop in /home/bbs/src.
> /home/bbs/bin/install.sh: bin/bbsd: not found
> /home/bbs/bin/install.sh: bin/camera: not found
> /home/bbs/bin/install.sh: bin/account: not found
> Trying 0.0.0.0...
> telnet: connect to address 0.0.0.0: Connection refused
> telnet: Unable to connect to remote host
> ※ 引述《[email protected] (My life is full of chia)》之銘言:
> > src/lib/Makefile:
> > src/so/Makefile:
> > src/game/Makefile
> > src/pip/Makefile
> > 這幾個檔案裡面,在 CFLAGS 參數處加上 -fPIC
> > 例如
> > src/lib/Makefile:
> > CFLAGS = -O2 -s -pipe -fomit-frame-pointer -Wunused -I../include -fPIC
> > src/so/Makefile:
> > freebsd:
> > @$(MAKE) CC=gcc CFLAGS="-DBSD44 -O2 -pipe -fomit-frame-pointer \
> > -Wunused -I../include -fPIC" $(SO)
> > 然後重跑一次 install.sh 應該就可以了:p
--
┼─ 即使看不見了星星.它還是在原來的地方 ╱ 。
│ . 。 .╱│
│ 即使離開了視線 感情也不會疏遠 ╱ │
│. 。 。 ☆ ─┼by伊修卡
--
※ Origin: 星情夜語 <bbs.hychen.org>
◆ From: gaod @ 122-116-11-47.HINET-IP.hinet.net
-fPIC 在幹嘛可以參考這篇