繁体   English   中英

无法在终端OSX中执行文件

[英]Cannot Execute File in Terminal OSX

我可以使用g++ -Wall -c pa1.cpp -o pa1在OSX终端中运行编译。 它创建了pa1 ,所以我知道我的编译可以在终端中运行,但是我在执行时遇到了问题。 我曾尝试./pa1./a.outpa1和其他少数。 我相信问题出在Xcode,但是我的代码将在终端中编译并创建可执行文件这一事实使我不确定。 想一想,在重新安装Xcode之前,我会在这里征求建议。

使用g++ pa1.cpp -o pa1 ,然后您就可以将新的可执行文件作为./pa1运行。 这要求您的整个程序在pa1.cpp 如果分散在多个文件中,则必须在命令行上列出所有文件。

如注释中所述, -c选项表示编译,即。 创建一个目标文件,该文件可以传递给链接器以生成可执行文件。 如果不使用此选项,则g++将首先编译任何源文件,然后在所有目标文件上调用链接器,以默认情况下创建名为a.out的可执行文件(名称来自历史原因)。

通过使用file util,您可以看到命令的输出不是可执行二进制文件,而是中间目标文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM