6

LinuxのC++および再帰的なMakefileファイルを含む既存のフォルダーのコレクションでEclipseを使用しようとしています。makeファイルはとを使用しgcc、ユーザーはMakefileで使用するarパスを指定します。gcc使用するmakeファイルは手動で入力しました

Eclipseには、必要なものに適した新しいプロジェクトを作成するオプションがあります"Create a new Makefile project from existing code in that same directory"

* <none>
* cross GCC
* GNU Autotools Toolchain
* Linux GCC

ここで私は2つの質問があります:

  • どのツールチェーンを選択する必要がありますか?Eclipseはこの情報をどのように使用しますか?
  • Eclipseに、トップレベルのMakefileからできるだけ多くのことを推測してもらいたい(たとえば、パスを含める、ターゲットを作成するなど)。これどうやってするの?
4

2 に答える 2

3

あなたの質問は、私のプロジェクト用に設定したものと非常によく似ています。

  1. アプリケーションの実行が期待されるターゲット プラットフォームが、コンパイルしているマシンである場合は、Linux GCC を選択する必要があります。
  2. アプリケーションが実行されるターゲット プラットフォームが ARM プロセッサなどの場合、クロス GCC を指定する必要があります。
  3. GNU Autotools ツールチェーンは、さまざまな Linux システムでソース コード パッケージをビルドするように設計されています。

「同じディレクトリにある既存のコードから新しい Makefile プロジェクトを作成する」を選択すると、Eclipse はユーザーの Makefile がビルド自体を管理すると想定します。Eclipse がインクルード パスを推測するには、プロジェクト設定で検出オプションを有効にします。確かに、最上位の make はインクルード パス、ソース コード パスなどを指定する必要があります。

于 2012-10-10T22:07:52.030 に答える
1

プロジェクトにあるものに基づいてEclipseがmakefileを作成できるようにするか、「ビルド」を選択したときに実行するコマンドを指定することしかできません。私が見つけたこれらのオプションを混在させても、実際には機能しません。Makefile を指定している場合は、Makefile がそれを定義するため、使用するコンパイラも重要ではありません。新しいプロジェクトを作成するときに「空の C++ プロジェクト」を選択するだけで、「既定のワークスペース」の場所を使用しないように指定し、代わりにこの入力ボックスがコード ベースを指すようにしてください。プロジェクトの c++/build 設定で、[makefile を自動的に生成する] がオフになっていることを確認し、プロジェクトを作成するために実行するコマンドを指定します。(通常、これは「make all」ですが、場合によっては異なる場合があります)

于 2012-10-10T20:03:59.603 に答える