[問題] Makefile 動態庫編譯執行檔 crash

作者: gigigigi (gigigigi)   2016-05-19 00:14:21
https://gist.github.com/shihyu/a55bf6e828cd2e89f38361a7973d1cc3
我這程式碼應該沒問題 , 應該是 Makefile 做連接地方有問題造成 Segmentation
fault
但是我看不出來到底是哪邊有問題xd
是我 -share 跟 -fPIC 誤用嗎?
還有一個疑惑就是 add.c sub.c
在編譯 add.o 跟 sub.o 跟下面參數無關嗎? 編譯add.o 跟sub.o是吃 CFLAGS嗎?
是針對 ${SOFLAGS} 產生 add.so 跟 sub.so 吃的參數嗎?
add.so: ${ADD_OBJS}
$(CC) ${SOFLAGS} -o $@ $?
sub.so: ${SUB_OBJS}
$(CC) ${SOFLAGS} -o $@ $?
謝謝
作者: alongalone (沿著孤單的路)   2016-05-19 09:28:00
編main的時候有用到-share,-fPIC的CFLAG.感覺用不上阿
作者: filiaslayers (司馬雲)   2016-05-19 09:40:00
你直接編會crash嗎?
作者: gigigigi (gigigigi)   2016-05-19 19:50:00
直接編譯正常, 不加上 -share , -fPIC 編譯不過所以才加編譯器編譯不過提示要加上 -fPIC
作者: yvb   2016-05-23 15:02:00
你的 Makefile 有不少錯啊... 不過會 SegFault 的主要原因是你的 main 不是 executable, 而是 shared object, 故不能執行
作者: troylee (troylee)   2016-06-27 00:57:00
用 CMake or autotools 解決一切困擾...

Links booklink

Contact Us: admin [ a t ] ucptt.com