毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> linux >> 正文

gcc编译的程序没有执行权限

更新时间:2013-5-2:  来源:毕业论文

gcc编译的程序没有执行权限

今天突然发现我在ubuntu中用gcc编译一个文件后,生成的可执行文件没有执行权限,就算chmod 777 后也无法执行!求教!
gcc -c pid.c -o pid
 chmod a+x pid
 ./pid
结果:
bash: ./pid: cannot execute binary file
用file查看:项目可行性研究报告 
 file pid
结果
pid: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped

下面是用file命令查看以前写的一个测试程序,这个是好的。这个以前也是用同样的gcc命令编译的,而且编译的结果本身就有可执行权限。但是用file命令发现和上面的不样
file str-test
结果:
str-test: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x86469a8dac9963f16a4986ceec9fbf1f8f689372, not stripped
-c选项,-c选项的含义:
 -c  Compile or assemble the source files, but do not link.
所以,-o选项输出的pid,实际是一个.o文件,有关键字“relocatable”。
楼主用gcc pid.c -o pid生成的才是可执行文件,“executable”。

gcc pid.c -o pid

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。