.bash_profileにはパス設定とエイリアスがほとんどなく、エクスポート中です。
たとえば、
alias gcc=/abc/def/......./myrtgcc
export gcc
使いたいミルトgccgcc
次のコマンドを使用して、システムを実行したい端末またはEclipseでCプログラムをコンパイルしますmyrtgcc somfile.c -o output
。
しかし、これは事実ではありません。上記のエイリアスを追加し.bash_profile
てシステムを再起動しても(またはを使用してsource .bash_profile
)変更は反映されません。端末を開き、と入力するとが表示され、which gcc
eclipse/usr/bin/gcc
が「GCC」コマンドを使用すると、同じコマンドが再び呼び出されます/usr/bin/gcc
。
どうやって作りますか?ミルトgccコマンドで使用されるシステムデフォルト湾岸協力協議会
答え1
あなたはいくつかのことについて混乱しています。
which
エイリアスは反映されません。したがって、which
エイリアスが作成されたことを確認しようとするときに使用することは役に立ちません。alias
代わりに引数なしで実行すると、有効なエイリアスがすべて表示されます。例:anthony@Zia:~$ foo bash: foo: command not found anthony@Zia:~ [$?=127]$ alias foo='echo hi' anthony@Zia:~$ foo hi anthony@Zia:~$ which foo anthony@Zia:~ [$?=1]$
エイリアスは他のものに影響を与えず、シェルにのみ影響します。 .dllを実行しようとすると、シェルエイリアスは重要ではありません
make
。エイリアスではない変数のみをエクスポートすることもできます。これはPerlを実行したい例です(再びfooエイリアスを使用します)。eclipse
gcc
anthony@Zia:~$ perl -Mautodie=system -E 'system("foo")' "foo" failed to start: "No such file or directory" at (eval 6) line 12. at -e line 1
コンパイルするほとんどのタスクは代わりに実行などを
cc
実行します。したがって、書き換えても動作しない可能性があります。c++
gcc
gcc
それでは、これを達成する方法は何ですか?
make
最善の方法は、使用するコンパイラを教えることです。
make CC=/path/to/myrtgcc target
/.configure
autoconfを使用するプログラムを実行するときに環境に渡すこともできます。
2番目の方法は、(たとえば)などの名前の単純なシェルスクリプトを生成してgcc
パスの最初の場所に配置することです。スクリプトは次のとおりです。cc
~/bin
#!/bin/sh
exec /path/to/myrtgcc "$@"
PATHでは、次のものを使用して最初に配置できます.bashrc
。
PATH="$HOME/bin:$PATH"
export PATH
答え2
シェルのドキュメントをお読みください。構成ファイルには2種類あります。 .bash_profileはすでにログインしており、一部の操作(新しい端末を開くなど)を実行すると実行されます。別の種類のプロファイルはシステムに初めてログインするときに使用されます。奇妙なことに、これをログインプロファイルと呼びます。必要なタスクを実行するには、.profileに内容を入れてください。