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此时可以正常执行。