使用GCC构建Linux可执行文件

Nat*_*pos 7 c++ linux ubuntu executable gcc

我正在使用Linux Ubuntu Intrepid Ibex并使用GCC编译C++文件,但是当我编译时,gcc生成a.out文件,即可执行文件,但我如何制作Linux可执行文件?谢谢!

Tim*_*Tim 20

该可执行文件是"Linux可执行文件" - 也就是说,它可以在任何最新的Linux系统上执行.您可以将文件重命名为您想要使用的文件

rename a.out your-executable-name
Run Code Online (Sandbox Code Playgroud)

或者更好的是,告诉GCC使用输出文件的位置

gcc -o your-executable-name your-source-file.c
Run Code Online (Sandbox Code Playgroud)

请记住,在Linux系统允许您运行该文件之前,您可能需要设置其"可执行位":

chmod +x your-executable-name
Run Code Online (Sandbox Code Playgroud)

还要记住,在Linux上,文件的扩展名与它的实际内容几乎没有关系 - 你的可执行文件可以被命名something,something.out甚至something.exe,只要它是由GCC生成的,而你chmod +x在文件上做,你就可以运行它作为Linux可执行文件.

  • gcc(实际上它调用的链接器)是否已在其输出文件中设置可执行位? (4认同)
  • @CesarB:是的,默认情况下,gcc调用使'your-executable-name'可执行. (2认同)