用于c ++的编译器(认为它是g ++?)


2

从mac os安装DVD安装'Developer Tools'后,我现在可以gcc /path/to/input/从.c代码执行并创建一个可执行的shell脚本。

我认为用于创建可执行文件的C ++编译器是g ++,但是当我尝试使用它编译.cpp文件时:'g ++ / path / to / file /'它会创建预期的a.out文件,但是当我尝试运行新文件,我的电脑默认使用'Saturn'打开'a.out'并说它无法打开文件...

什么是土星,为什么它不能打开'a.out'?

另外,我应该使用g ++来编译C ++文件,还是有一个更好的编译器,我可以用它(除了XCode)?


2
尝试g++ directory/file.cpp -o file
Tomer Vromen

某些C ++编译器默认在运行时需要.so或.dll文件,用于对象构造或异常处理等事情。这似乎就是这样。如果是这样,您可以在命令中添加一个开关,以使库静态链接到您的可执行文件中。
JustJeff

Answers:


2

它可能与文件的扩展有关。也许程序Saturn是出于某种原因运行此类文件的默认应用程序。导航到文件所在的目录后,在shell中键入:./a.out,让我知道会发生什么。正如Tomer所建议的那样,如果你删除* .out扩展名应该是我自动打开的。


如果你想通过双击打开文件,将它的默认应用程序设置为终端
rubixibuc

0

是的,Tomer的想法奏效了,就是它......我仍然不确定Saturn究竟是什么(可能是C ++的GUI环境),但这个问题无关紧要,因为终端现在运行已编译的C ++文件,谢谢很多!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.