我正在大学学习C课程,并希望在我的Mac上使用TextWrangler文本编辑器编写程序(运行OSX Lion 10.7)。一旦我写了.c文件,我就用gcc编译它。我从Apple Developer Tools下载了编译器。
它包含在命令行工具下载中。我使用Terminal找到该文件,使用gcc filename.c编译它,其中创建了a.out可执行文件。但是,当我输入“a.out”或“/a.out”时,我收到以下消息:“-bash:a.out:command not found”或“-bash:/a.out:没有这样的文件或目录”。在使用相同的方法之前,我已经在Linux系统上成功编译并运行了C程序。我在Mac上做错了什么?
答案 0 :(得分:47)
您需要添加一个点来指示可执行文件位于当前目录中,因为当前目录不在路径中:
./a.out
答案 1 :(得分:17)
你只是缺少一件事! 而不是“/a.out”它应该是“./a.out”。另一个有用的东西是更改输出,以便您可以拥有多个已编译的程序。简单地说,您需要在终端中放置的唯一内容如下(用你想要的东西填空)
gcc nameofprogramyouwrote.c -o whatyouwanttheprogramtobenamed
祝你好运!
答案 2 :(得分:5)
你必须在斜线前添加一个点:
./a.out
/a.out
会尝试在根文件夹(/
)中执行程序
a.out
将在PATH环境变量中定义的所有文件夹中查找您的程序。
我已成功在Linux系统上编译和运行C程序 在使用同样的方法之前。我在Mac上做错了什么?
你必须在Linux上做同样的事情。
答案 3 :(得分:3)
确保使用chmod + x a.out
设置可执行文件的权限答案 4 :(得分:2)
构建:
gcc -Wall -o yourFile yourFile.c
然后执行:
./yourFile
答案 5 :(得分:-1)
您需要一个编译器。然而,最简单的方法是安装XCode。通过这种方式,您可以访问" gcc",因此,
gcc -o mybinaryfile mysourcefile.c
然后像这样运行。
./mybinaryfile
希望这有帮助!