bel*_*ian 1 compiler macintosh
export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
CC --version
Run Code Online (Sandbox Code Playgroud)
我使用该脚本来更改默认的 CC 命令,但它在 Mac 上不起作用。
打印:
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Run Code Online (Sandbox Code Playgroud)
我的错在哪里?
在你的例子中
export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
CC --version
Run Code Online (Sandbox Code Playgroud)
最后一行使用文字名称 CC
(通常是 C++ 编译器)而不是 shell变量 $CC
(它将使用您导出的环境变量)。
也许你的意思是
export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
$CC --version
Run Code Online (Sandbox Code Playgroud)
您可能还想简单地通过在您的 上创建cc
一个ndk_tools
到该链接(名为“cc”)的符号链接来创建该链接PATH
,但这会干扰编译器的本机使用。因此,环境变量(和选择性使用)是正确的选择。
在 makefile 中,您可以将此符号与括号或大括号一起使用,例如$(CC)
或${CC}
。如果没有大括号,make
会看到,这不是您想要的。您可以通过多种方式在 makefile 中设置变量,例如:$C
C
make CC="$CC"
make -e
Run Code Online (Sandbox Code Playgroud)
大多数时候,由于使用基于 autoconf 或 imake 的构建,我会直接在makefile 中使用该值。对于这些情况,导出变量就不那么重要了。
归档时间: |
|
查看次数: |
5311 次 |
最近记录: |