makeを使用して複雑なC++プロジェクトを構築するために必要なすべてを備えたchroot環境があります(特定のLinuxディストリビューション用です)。
このプロジェクトではEclipseCDT(chroot環境の外部)を使用したいのですが、Eclipseがビルド時にchroot環境に入り、そこにビルドされるようにします。
出来ますか?
makeを使用して複雑なC++プロジェクトを構築するために必要なすべてを備えたchroot環境があります(特定のLinuxディストリビューション用です)。
このプロジェクトではEclipseCDT(chroot環境の外部)を使用したいのですが、Eclipseがビルド時にchroot環境に入り、そこにビルドされるようにします。
出来ますか?
もう少し洗練された方法は、スクリプト compile.sh を作成することです。
#!/bin/bash
sudo chroot $HOME/mychroot bash -c 'cd /workspace/'$1'/; make '$2
そしてEclipseでこれをあなたに外部ビルダーに書いてください
/pathto/compile.sh ${ProjName}
ビルド ターゲットが chroot に渡されるため、部分ビルドが可能になります。
はい、可能です。C/C++ ビルドの下のビルダー設定タブ内で「外部ビルダー」を選択するだけです。次のコマンドを実行するスクリプトを選択しました。
sudo chroot $HOME/mychroot/ bash -c 'cd /myproject-location/; make clean; make'
パスワード チェックを回避するために、次の行を /etc/sudoers ファイルに追加しました。
%sudo ALL= NOPASSWD: /usr/sbin/chroot
誤ったビルドの失敗/構文エラーの報告を回避するには、chroot 環境内から eclipse cdt プロジェクトにインクルード ファイルを追加する必要があります。