目前,我正尝试在我的新Mac上编程。我安装了TextWrangler,并选择了C++作为我的语言;因为我在使用Windows时对它有一定的先验知识。
所以,我写了一个非常常见的"Hello World“程序。不过,当我尝试运行它时,我得到了一个错误:
“此文件似乎不包含有效的‘shebang’行(应用程序错误代码: 13304)”
我尝试搜索错误代码以了解如何修复此问题,但我什么也找不到。我不知道“shebang”是什么.有人能帮帮我吗?
发布于 2011-08-15 11:47:45
看起来您确实试图直接运行源文件,但是您需要使用C++编译器进行编译,例如包含用于Mac的C++编译器g++
的gcc (GNU编译器集合)中包含的编译器。它不包含在Mac中,你必须先下载:
来自http://www.tech-recipes.com/rx/726/mac-os-x-install-gcc-compiler/:“要安装gcc编译器,请从http://connect.apple.com/下载xcode包。你需要注册一个苹果开发者连接帐户。注册后,登录并点击下载软件,然后点击开发者工具。找到Xcode工具(版本)- CD镜像旁边的下载链接并点击它!”
安装完成后,如果您要快速获取Hello World,那么可以从源文件目录中的终端窗口执行命令g++ HelloWorld.cpp -o HelloWorld
。然后,您应该能够以./HelloWorld
身份运行它。
此外,如果你来自Visual Studio世界,你可能想尝试一下Mono和MonoDevelop。Mono是C# (和其他语言)的免费实现,而MonoDevelop是一个与Visual Studio非常相似的集成开发环境。MonoDevelop支持C#和其他.NET语言,包括Visual Basic .NET以及C/C++开发。我没有广泛地使用它,但它看起来与VS非常相似,所以你不需要在一天内学习所有新的东西。我也用过KDevelop,虽然已经有一段时间了,但我在使用它的时候非常喜欢它。它对C/C++中的GNU风格的开发有很多支持,并且在我的记忆中非常强大。
祝你的努力好运!
链接:
http://mono-project.com/Main_Page
发布于 2011-08-15 11:27:47
你需要先用编译器编译它。我假设您试图像./source
一样运行源文件,但是C++不是这样工作的。
但是,在某些编译器中,您可以提供一个 shebang行作为源文件的第一行(该#!
称为shebang或,因此得名),如下所示:
#!/path/to/compiler
这样,shell就知道使用哪个应用程序来运行这种类型的文件,并且当您尝试单独运行源文件时,编译器将为您编译并运行它。不过,这是一个依赖于编译器的特性,所以我建议使用G++或Mac用来获取可执行文件的任何工具进行简单编译,然后运行它。
发布于 2017-04-10 22:28:33
虽然我不建议将其用于常规的C++开发,但对于小型C++实用程序,我使用了一个简单的shell脚本包装器。以下是Hello World示例:
#if 0 // -- build and run wrapper script for C++ ------------------------------
TMP=$(mktemp -d)
c++ -o ${TMP}/a.out ${0} && ${TMP}/a.out ${@:1} ; RV=${?}
rm -rf ${TMP}
exit ${RV}
#endif // ----------------------------------------------------------------------
#include <iostream>
int main(int argc, char *argv[])
{
std::cout << "Hello world" << std::endl;
return 0;
}
https://stackoverflow.com/questions/7061449
复制相似问题