2009-04-25 14 views
3

TinyXMLパーサーで動作するC++コードをいくつか手に入れました。しかし、これを行うには、TinyXMLのソースコードを通常のソースコードに含めなければなりませんでした。私は別のライブラリとしてTinyXMLを含めたいと思っています。 Cygwin C++コンパイラでEclipseを使用しています。これを行うには良い方法は何ですか?C++/Eclipseでインクルード用のライブラリを個別に作成する方法

答えて

4

私は自分のプロジェクトのソースコードからライブラリを分離したいと思っていますが、ライブラリが同じフォルダにないときにはビルド方法がわかりません。あなたのライブラリーを想定すると


は* .libファイルと* .hファイルプリコンパイルしています

  1. 移動を別のディレクトリにライブラリのソースコード
  2. メニューバーの "プロジェクト"
  3. メニュー "プロパティ"すべてのプロジェクトプロパティのダイアログボックスが開き、左側にリストが表示されます。
  4. リスト項目 "C/C++ Build"はGUIを変更し、gccのコンパイラ/リンカー/アセンブラのすべてのオプションを表示します(私はアセンブラをしませんので、アセンブラで何もしません)。 [1]
  5. GCC Cコンパイラ - >ディレクトリ:
  6. グリーンプラスアイコン[2] - >
  7. あなたの* .hファイルのパスを指定しますあなたのコンパイラは今幸せでなければなりません(ただし、必要になりますリンカは、各関数の実際の定義が何であるかを知らないので、リンク失敗)
  8. GCC Cリンカ - >ライブラリ:
  9. ライブラリ検索パス(-L) - >グリーンプラスアイコン - > * .libファイルのパスを指定する
  10. ライブラリ(-l) - > Gree Nプラスアイコン - > [脚注 - 1]あなたは今幸せになるべきで、あなたのコードが

をコンパイルする必要があり

  • あなたのリンカを使用している各ライブラリの名前を指定してGUI C/C++ビルドペインがラッパーでありますgccのコマンドラインコンパイラ/リンカのために...それは視覚的にすべてを表示するので、使いやすくなっています。

    [脚注-2] [+]アイコンは、ライブラリ* .hインクルードファイルの場所をコンパイラに知らせるものです。コンパイラはコンパイルする前にライブラリのプロトタイプの機能を知るために* .hファイルが必要です。

  • は、ステップ7で、あなたがする必要がある7

    1. 同じ手順を実行します。上記のステップを除き:


      あなたは(コンパイルされていない)、実際の* .cと* .hのを持っていると仮定するとEclipseの "managed make"がライブラリの* .cファイルを見ていることを確認してください。ソースコードが表示されない場合は、ソースをコンパイルする場所を指定する必要があります。

  • +0

    現時点では、私はこのコンピュータにEclipseを持っていません...そして、私はそのEclipseオプションが何であるか正確に覚えていません...しかし、私がコンピュータに着くとすぐに私の答えを編集しますEclipseで。 他の人が自由にチップすることができます。 –

    +0

    詳細な回答ありがとう! –

    2

    基本的には簡単です。ライブラリのソースコードをコンパイルし、ar(1)でライブラリを構築します。はい、驚いたことに、図書館は単なるアーカイブです。 UNIXはそのようにクールです。

    最終コードをビルドするときに、コードを静的ライブラリとして含めることができます。

    私はEclipseをそれほど使わないので、IDE内の正確なプロセスを教えてくれませんが、ビルドするために別のプロジェクトをセットアップするだけです。

    ここで、DLLをビルドすることが必要な場合は、特別なフラグを使用する必要があります。良いページhereがあります。

    関連する問題