2

私は単純な Makefile を持っています:

app : app.cpp
      g++ -c app.cpp -o app

しかし、私のアプリケーションはvar環境変数が設定されていることを要求します (var := "/etc/file.cfg")、Makefile でこれを行う方法は? つまり、コマンドmake Makefileを実行した後にこれを実行できるようにする方法は次のとおりです。

mazix@computer:~/Desktop/ echo $(var)「/etc/file.cfg」を見ることができますか?

4

1 に答える 1

4

プロセスは、その親プロセスに環境変数を設定できません。それが UNIX のしくみです。

変数を設定してプログラムを実行する小さなスクリプトを作成できます。スクリプトの内容が多少変化する場合は、Makefile を記述してスクリプトを生成できます。

#!/bin/bash
export my_var=12345_mazix
./app

または、Makefile は、~/.profileこれらの環境変数を設定するためのコマンドまたはコマンドで構成される、ファイルにコピー アンド ペーストされることを意図した文字列を表示できます。

export my_var=12345_mazix
于 2012-07-30T13:18:33.327 に答える