質問

私はcmakeのとEclipseプロジェクトを作成しました。私はQTでVTKを使用しています。次のようにディレクトリ構造があります:

parent_dir:
    source - source.h, source.cpp
    build - this is where the .project resides

私は、ワークスペースのディレクトリで日食を解雇しました。の/パス/親

私はで説明した手順に従っています http://www.cmake.org/Wiki/Eclipse_CDT4_Generator に。 すべてがうまく構築しますが、ナビゲーションは動作しません。それは日食が私にのsource.h がまだインデックスが作成されていないという警告を与え、です。

また、自動補完がQTとVTK関連するクラスでは動作しません。 QTとVTK含んが含まれているプロパティ、|私はプロジェクトでチェックしていました。私が間違って何をやっていますか?私は本当に私のプロジェクトでの作業日食に自動補完NDナビゲーションを持っていると思います。私はUbuntuの8.04 64ビットの日食ガニメデを使用しています。

事前にTHX

役に立ちましたか?

解決

ウィキによると、あなたがソースツリーの外にビルドツリーを持っている必要があります。

  

このリンクされたリソースがあれば作成されません   ビルドディレクトリはサブディレクトリです   ソースディレクトリの理由   Eclipseは、プロジェクトをロードすることはできません。   これ指してリンクされたリソースを持っています   親ディレクトリへ。だから我々は、お勧めします   ビルドディレクトリを作成しません   子供のように、それに兄弟として   ソースディレクトリます。

あなたはこのような何かをする必要があります:

mkdir /home/user/parent_dir_build
cd  /home/user/parent_dir_build
cmake /home/user/parent_dir

他のヒント

このは把握して私にはかなり時間がかかりました。 あなたは、「ビルド」ディレクトリは、本当に、「CMakeLists.txt」が含まれている最も高いレベルのディレクトリを意味し、プロジェクトディレクトリの一部ではないことを確認する必要があります。

私の場合、私は "DIR /木/ project_dir" を持っていると "DIR /木/ project_dir / SRC"、そして私は、ビルドディレクトリ "ディレクトリ/木/ build_dir" を作成する必要がありますので。

そこで、私は、デバッグとリリースの両方のプロジェクトを作成する小さなスクリプトを作成します:

#!/bin/sh
mkdir -p $1_build/Release
mkdir -p $1_build/Debug
cmake -E chdir $1_build/Release cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=Release ../../$1
cmake -E chdir $1_build/Debug cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug ../../$1

引数 "project_dir" と "DIR /木" からスクリプトを呼び出します。

> "インポート" - -

次に、Eclipseで、 "ファイル" をクリック> "一般" - > "既存プロジェクトをワークスペースへ"。 それは自動的に両方のプロジェクトを認識し、ディレクトリ "DIR /木/ $の1_build" を指定します。

さて、両方のリリースとデバッグのプロジェクトは、Eclipseにロードされ、あなたがエラーをダブルクリックしてコードAssiste(コード補完)、および迅速なデバッグなどのすべてのすてきな選択肢を持っています。

あなたはプロジェクトツリーからcmakeのファイルを削除するためにEclipseでいくつかのファイルフィルタを追加することもできます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top