我正在大学学习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上做错了什么?
MBy*_*ByD 49
您需要添加一个点来指示可执行文件位于当前目录中,因为当前目录不在路径中:
./a.out
Run Code Online (Sandbox Code Playgroud)
bec*_*kah 17
你只是缺少一件事!而不是"/a.out"它应该是"./a.out".另一个有用的东西是更改输出,以便您可以拥有多个已编译的程序.简单地说,您需要在终端中放置的唯一内容如下(用你想要的东西填空)
gcc nameofprogramyouwrote.c -o whatyouwanttheprogramtobenamed
Run Code Online (Sandbox Code Playgroud)
祝好运!
构建:
gcc -Wall -o yourFile yourFile.c
Run Code Online (Sandbox Code Playgroud)
然后执行:
./yourFile
Run Code Online (Sandbox Code Playgroud)
你必须在斜线前添加一个点:
./a.out
Run Code Online (Sandbox Code Playgroud)
/a.out会尝试在根文件夹(/)中执行程序.
a.out将在PATH环境变量中定义的所有文件夹中查找您的程序.
在使用相同的方法之前,我已经在Linux系统上成功编译并运行了C程序.我在Mac上做错了什么?
你必须在Linux上做同样的事情.