LINUX 可執行程序一運行直接core掉問題解決

LINUX編譯了 C 語言程序,用到了 系統動態鏈接庫.so。編譯成功後,運行直接CORE了。GDB發現程序根本沒開始運行就core了。如果把程序中把用到的系統動態鏈接庫.so部分去掉,則能正常運行。

如main會用到libadd.so

目錄結構

--src--add--add.h

         |         |_add.cpp (這裏有makefile0)

         |_main.cpp

         |_makefile

如果makefile中加載libadd.so CXXFLAGS=-shared -fPic -Wall -g

這樣可以正常生成main程序,但是執行的時候會一起動直接core掉;

應該是init時候出錯,加載.so文件出錯。

去掉-shared選項,make clean;make此時可以正常執行。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章