2017年6月19日月曜日

Library setting of Eclipse CDT

マルチプラットフォームで開発しているので、IDEはEclipseを使っている。

言語は、基本はCとC++。従って、CDTを使っている。

僕の場合は、処理速度最優先なので結果的にそうなってしまう。

CDTの設定だけど、Eclipseの手間と感じるのは利用するlibraryの設定

OpenCVの例でメモっておくけど、、、

実は、僕も不勉強で、設定に関しては理解していない事も多かった。

プロジェクトのフォルダーの.cprojectファイルに直接書けばlibraryの設定をUIで一つ一つしなくても良い。

例えば、こんな感じで、全部設定してしまう。例はwindowsの場合

<option id="gnu.cpp.link.option.libs.127616230" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" useByScannerDiscovery="false" valueType="libs">
  <listOptionValue builtIn="false" value="opencv_core320.dll"/>
  <listOptionValue builtIn="false" value="opencv_features2d320.dll"/>
  <listOptionValue builtIn="false" value="opencv_flann320.dll"/>
  <listOptionValue builtIn="false" value="opencv_highgui320.dll"/>
  <listOptionValue builtIn="false" value="opencv_imgcodecs320.dll"/>
  <listOptionValue builtIn="false" value="opencv_imgproc320.dll"/>
  <listOptionValue builtIn="false" value="opencv_ml320.dll"/>
  <listOptionValue builtIn="false" value="opencv_objdetect320.dll"/>
  <listOptionValue builtIn="false" value="opencv_photo320.dll"/>
  <listOptionValue builtIn="false" value="opencv_shape320.dll"/>
  <listOptionValue builtIn="false" value="opencv_stitching320.dll"/>
  <listOptionValue builtIn="false" value="opencv_superres320.dll"/>
  <listOptionValue builtIn="false" value="opencv_video320.dll"/>
  <listOptionValue builtIn="false" value="opencv_videoio320.dll"/>
  <listOptionValue builtIn="false" value="opencv_videostab320.dll"/>
  <listOptionValue builtIn="false" value="opencv_viz320.dll"/>
</option>

こうすると、、、こんな感じで反映される。




で、あとから不要な物を消してもよいし、、、
こんな感じで、ラクチン

結局、以下の3つを設定する。
1. project > Properties
1.1 C/C++ Build > settings
1.1.1 G++ compiler
        include path
1.1.2 Linker > Libraries
        Libraries (-l)
        Libraries path (-L)
1.2 C/C++ General > Paths and Symbols
        1.1.2の入力が反映されているか確認する。
2. project > Run As
        " Local C/C++ Application "を実行する。エラーになるが気にしない。
        下記のRun Configurations...に、項目として表示させる為。
        もっと良い方法があるはず、、、
3. project > Run Configurations...
        Arguments 設定
        Environment設定
                LD_LIBRARY_PATH shareライブラリーのあるディレクトリ


Peace!!

0 件のコメント:

コメントを投稿