2017-07-21 8 views
0

私は多くの個々のcppプログラムをeclipseで実行したいと思います。それぞれがmain()を持っている個々のcppファイルを実行します

それぞれは短い完全なプログラムであり、それぞれ独自のメイン関数を含んでいます。また、私はこれらすべてのプログラムと共通のライブラリをいくつか共有したいと思っています。あなたはそれについて何か考えていますか?ここで

私はEclipseのあなたの問題は、実際にどのように実行彼らが、どのようにビルド(コンパイルとリンク)ではないかもしれない2つの個々のコード

Invoking: GCC C++ Linker 
g++ -L/usr/local/lib -o "Displayimage" ./draw_rectangle.o ./showImg.o -lopencv_core -lopencv_imgproc -lopencv_imgcodecs -lopencv_highgui 
./showImg.o: In function `main': 
showImg.cpp:(.text.startup+0x0): multiple definition of `main' 
./draw_rectangle.o:draw_rectangle.cpp:(.text.startup+0x0): first defined here 
collect2: error: ld returned 1 exit status 
make: *** [Displayimage] Error 1 
+1

CMakeの使い方を学んでください。 –

+4

それで、別々の実行ファイルとしてビルドしますか? –

+0

すべての参照@Quantum Pyysicst – srk

答えて

0

を実行しようとする問題であり、それら。

「実行」メニューからEclipseから任意のプログラムを簡単に実行できます。反対に、ビルドする場合は、それぞれのEclipseプロジェクトを個別に作成する必要があります(管理対象ビルドが使用されている場合)。

ただし、makefile/CMakeプロジェクトでは、複数の実行可能ファイルを1つのプロジェクトに含めることもできます。

共通ライブラリの場合は、それらを別々のプロジェクトとして作成して、実行可能プロジェクトをそれらのプロジェクトに依存させることもできます。 CMakeには他のオプションもあります(単一のプロジェクトに簡単に組み込むことも、find_packageスクリプトを作成することもできます)

+0

今すぐ見てください – srk

+1

このように、両方のファイルを1つの実行可能ファイルにリンクすることはできません(それぞれの実行ファイルに 'main()'が1つだけ必要です)。したがって、 '.cpp ' main() 'そして、それぞれを別々に実行することができます。私。最も簡単な方法は、それぞれ別々のプロジェクトを作成することです。 – axalis

+0

が作成されたにもかかわらず同じ問題 – srk

関連する問題