在ubuntu上编译一个helloworld的测试程序出现无法运行的问题,错误如下:

一开始以为权限问题,加了权限后还是无法执行,网上查了下,有说是32位编译的无法运行在64位,还有的说是文件系统挂载的问题,后来看到一个讨论原来是编译选项出错了,编译时候多加一个-c参数,导致只编译不链接,从而无法执行,去掉该选项后重新编译运行正常。
#错误编译选项
app:
gcc -Wall -o demoapp -c call_lib.c -L. -lhelloworld
#正确编译选项
app:
gcc -Wall -o demoapp call_lib.c -L. -lhelloworld

Ubuntu编译HelloWorld程序
本文解决在Ubuntu上编译HelloWorld程序时遇到的无法运行问题。错误原因为编译选项中多加了-c参数,导致只编译不链接。正确的编译选项应去除该参数,确保程序可以正常链接。
682

被折叠的 条评论
为什么被折叠?



