sudo

Ubuntuのsudoでちょっとハマった。
sudoは標準だと環境変数を引き継がないので、通常ユーザでsourceで環境変数を読み込んでから、環境変数から値を取ってくるsudo makeをやると失敗する。
Pandaboardでgitから持ってきたmonoをllvmを有効にしてインストールするために、mono用llvmをインストールしているのになぜかシステム標準のllvmを取ってきて、mono用を使ってくださいとエラーが出ていて、なぜ?と思って調べたらわかった。
ルートシェルに入るか、一連の処理をシェルスクリプト化すればいいのか?


monoのgitから取得→コンフィグ→make→make installまでは、シェルスクリプトで自動化したが、installのためにシェルスクリプトをsudoで実行するので、中間ファイルとかもroot所有になって微妙。
手動でmakeするときに上に書いたような環境変数の問題でハマったりするし…