2013-05-17 35 views
6

私はNetbeansからEclipse(Ubuntu 12.0.4)に移行しています。ライブラリ(共有および静的)とスタンドアロンの実行可能ファイルであるいくつかのサブプロジェクトで構成されるCアプリケーションがあります。Eclipse CDTでマルチモジュールCプロジェクト(ソリューション)を構築する

私は、理想的にはコンポーネントのプロジェクト

  • foobarに
  • foofoo
  • barfoo
  • BARBAR

が含まれている '親' プロジェクトfooを作成する方法を見つけ出すことはできません、すべての 'コンポーネントプロジェクト'をフォルダfooの下に作成したいので、私はこのようなディレクトリ構造:

  • /パス/に/ fooの/ foobarに/(foobarのプロジェクトファイルが含まれています)
  • /パス/に/ fooの/ foofoo /(foofooプロジェクトファイルが含まれています)
  • /パス//fooの/ barfoo/
  • /パス/に/ fooの/ BARBAR /(含まれていBARBARプロジェクトファイル)(barfooプロジェクトファイルが含まれています)

は、誰もが、私は(IDEとしてEclipseを使用してこの構造を実現する方法を知っていますCDT付き)?

最後に、Autotoolsオプションを使用してCモジュールを作成します。モジュールに新しいヘッダー/ソースを追加すると、Autotoolsの生成ファイルが自動的に更新されますか?またはAutotoolファイルを手動で維持する必要がありますか?

答えて

1

フレンド、 "親" Cプロジェクトはありません。 IDEで通常のCプロジェクトを作成し、すべての依存関係をサブフォルダに追加することができます。その後、Makefileを介してコンパイラにビルド手順を伝えます。私はあなたがCアプリケーションの経験を持っていたので簡単な方法だと思います。

autotoolsについて、プロジェクトファイルを更新/追加/削除したら、変更を反映するようにMakefileを変更して、プロジェクトをクリーンアップして再ビルドする必要があると思います。

他のCビルドツールの場合は、buildrootを使用できます。

1

私がEclipseでこれを行うには、というプロジェクト用に別のワークスペースを作成することをお勧めします。 fooを追加し、サブプロジェクト(foobar,foofooなど)をプロジェクトとして追加します。これは、単一のモノリシックな作業領域の代わりに、一般的にeclipseで行う方が良い方法です。私はサブプロジェクトの特定の依存関係の構造がどのようなものかはわかりませんが、eclipseプロジェクトのプロパティを使用するだけで簡単に表現できるはずです。これには、ライブラリに依存するロールアップ実行可能サブプロジェクトを含めることができます。

eclipse cdtがautotoolsファイルを維持するかどうかはわかりません。しかし、そうでない場合は、autoscanautoheaderなどのautotoolsバイナリの一部をeclipseビルドコマンドに統合して使用するのは比較的簡単です。

1

は、最初にあなたはそれがはるかに安全な方法ですが、あなたのファイルを追加し、あなたがnew project、そして、per fileまたはper class(C++やCによる)する必要があり、working directoryする必要があります。別の方法はきれいではない、私は経験がある。それらを使用しないでください。

関連する問題