【问题标题】:How to add this line to environment variables for OSX?如何将此行添加到 OSX 的环境变量?
【发布时间】:2012-08-24 01:25:13
【问题描述】:
所以一个可执行文件不起作用,我找到了这篇文章 (http://hintsforums.macworld.com/showthread.php?t=126972):
我已将这一行添加到环境变量中:
代码:
export CFLAGS="$CFLAGS -I/usr/include/" LFLAGS="$LFLAGS -arch i386 -I/usr/local/lib"
./configure --disable-shared .... --cc=gcc-4.0 --enable-cross-compile --arch=i386 --target-os=darwin*
并将 --disable-yasm 添加到 ./configure 并完美编译。”
对环境变量一无所知,我用谷歌搜索并设置了一个 Plist 文件,但现在我很困惑。我应该添加键/值对行吗?键是“CFlags”、“LFlags”,然后呢?出口呢?也许我一起错过了标记。我非常缺乏经验。分步说明会非常好。
我们将不胜感激。提前致谢!
【问题讨论】:
标签:
macos
terminal
plist
exec
environment-variables
【解决方案1】:
它在你引用的代码中,在终端中运行这一行:
$export CFLAGS="$CFLAGS -I/usr/include/" LFLAGS="$LFLAGS -arch i386 -I/usr/local/lib"
“export”用于告诉所有子进程这些 shell 产生的环境变量,即在这个例子中,CFLAGS 和 LFLAGS。
但是,如果您不“导出”,那么您设置的 ENVIRONMENT VARIABLES 将仅适用于它后面的命令:
$CFLAGS="$CFLAGS -I/usr/include/" LFLAGS="$LFLAGS -arch i386 -I/usr/local/lib" some-command
$some-command
第一个“some-cammand”知道 CFLAGS 和 LFLAGS,但第二个不知道。
顺便说一句:“$”符号表示一个单独的 shell 命令。
【解决方案2】:
据我所知,该帖子告诉您在将源下载到相关程序后在终端中运行这两行代码:
export CFLAGS="$CFLAGS -I/usr/include/" LFLAGS="$LFLAGS -arch i386 -I/usr/local/lib"
./configure --disable-shared --cc=gcc-4.0 --enable-cross-compile --arch=i386 --target-os=darwin* --disable-yasm
当发帖人提到环境变量时,他很可能是在谈论$CFLAGS 和$LFLAGS 变量,它们在构建脚本中非常常用来向编译器添加标志(在这种情况下为gcc) .