1

每次我想在终端编译 C 文件时,我都必须输入 gcc 别名和 MacOSX SDK 的完整路径。例如,要运行 main.c 罚款,我会键入

$ cd /Users/Will/Desktop/C 
$ /Users/Will/Desktop/C/gcc -isysroot /Developer/SDKs/MacOSX10.6.sdk main.c

但是,我的目录位于 Desktop/C 文件夹中,因此我不必输入完整路径,但当我输入

$ cd /Users/Will/Desktop/C
$ gcc main.c

我明白了

-bash: gcc: command not found

此外,它似乎应该已经知道在 /Developer/SDKs/MacOSX10.6.sdk 中查找头文件,例如 stdio.h,但是当我键入时

$ /Users/Will/Desktop/C/gcc main.c

我得到类似的东西

main.c:1:19: error: stdio.h: No such file or directory

我该如何解决?

4

2 回答 2

2

如果它在您当前的工作目录中,请使用./gcc.

否则,将您$PATH指向该目录,您就可以在任何地方使用它作为gcc.

至于不必每次都输入SDK路径,您可以编写一个简单的bash脚本并将其放入您的$HOME/bin(假设您已经添加gcc到您的$PATH,否则添加完整路径)...

#!/bin/sh
gcc -isysroot /Developer/SDKs/MacOSX10.6.sdk "$@"

确保使用chmod +x gcc_wrapper. 然后你应该能够在任何地方使用它,并且传递给它的任何参数都将被添加到最后。

于 2013-01-05T07:24:14.987 回答
0

在 Unix 系统中

.bashrc在您的主文件夹中打开文件

在该文件中添加别名

例如:

alias mygcc="/Users/Will/Desktop/C/gcc"

关闭终端并重新打开它,现在您可以使用 mygcc filename.c 进行编译

同样,您也可以为 mac sdk 添加别名。

参考这个链接

于 2013-01-05T07:31:17.627 回答