export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
CC --version
このスクリプトを使用してデフォルトの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
私のせいは何ですか?
答え1
あなたの例では
export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
CC --version
最後の行にはテキストが使用されます。名前 CC
(通常C ++コンパイラ)シェルの代わりに変える $CC
(これはエクスポートされた環境変数を使用します)。
おそらくあなたは
export PATH=./ndk_tools/bin/:${PATH}
export CC=arm-linux-androideabi-gcc
export CXX=arm-linux-androideabi-g++
echo \
"$CC"
$CC --version
cc
コンピュータからリンクへのシンボリックリンクndk_tools
(「cc」という名前)を生成してリンクを生成することもできますが、PATH
これはコンパイラのデフォルトの使用を妨げます。したがって、環境変数(およびオプションの使用)が良い方法です。
$(CC)
メイクファイルでは、またはなどの括弧または中括弧でこの記号を使用できます${CC}
。中かっこがなければ見ることmake
ができます。$C
C
、あなたが望むものではありませんか?次のようなさまざまな方法でmakefileに変数を設定できます。
make CC="$CC"
make -e
ほとんどの場合、値のみを使用します。存在するautoconfまたはimakeベースのビルドを使用しているので、makefileにエクスポート変数はありません。このような場合、変数のエクスポートはそれほど重要ではありません。