私のC++プロジェクトでは、 CMakeを使用して、 boostからコンパイルおよび外部ライブラリのmakefileを作成しています。私が選んだエディターはvimです。$ make
コマンドラインでの実行は機能しますが:make
、vimではリンク段階で問題が発生し、次のように戻ります。
/usr/bin/ld: cannot find -lboost_system
ただし、プログラムをテストして使用:make install
する場所にプロジェクトを配置するためにも使用します。$HOME/usr/stow/<prog>
したがって、私はリンク段階を成功させるための解決策を探しています。
詳細:
これは、src外のビルドディレクトリにあります。したがって、私は設定しましたmakeprg
:set makeprg=make\ -C\ ../build/Release/
最新のブーストバージョンがインストールされ、プロジェクトで依存している環境モジュールプロジェクトを介してシステムで利用できるようになります。新しいブーストバージョンは、
$ module load boost
この行をに追加した$HOME/.profile
ので、コンパイルするたびに呼び出す必要はありません。
(G)VIMは、 vimで使用されている環境変数について説明しているシステムとは異なる$PATHを使用しているという質問を確認しました。
更新:この問題は、ウィンドウマネージャー(gnome2)から開始されたgvimでのみ発生し、コマンドライン/ bashから開始された(g)vimでは発生しませんでした。