2016-05-21 8 views
1

UbuntuでC++用のMRPTライブラリを使用する方法についてのチュートリアルに従っていますが、それほど遠くにはありません。私は成功した今、私はディレクトリにダウンロードして解凍しmrpt_example1.tar.gzこ​​のlinkUbuntuでMRPTチュートリアルをコンパイルする

からMRPTとの最初のC++プログラムを書く上でのチュートリアルを、以下の、しかしときだhttp://www.mrpt.org/MRPT_in_GNU/Linux_repositories

に応じたUbuntuのバイナリをダウンロード私はコマンドを実行します:

ccmake . 

コードを生成するオプションはありません。 MRPT_DIRはすでに/usr/share/mrptに設定されています。MRPTConfig.cmakeの位置にあるので、ccmakeはそのように見えます。私はCMAKE_BUILD_TYPEEXECUTABLE_OUTPUT_PATHまたはLIBRARY_OUTPUT_PATHのような他のオプションを設定しようとしましたが、それは役に立ちませんでした。

ccmakeを実際にコンパイルするにはどうすればよいですか?

答えて

2

代わりのccmakeを使用してそのように、あなたは、直接cmakeを使用することができます。

cmake . 

これは現在のディレクトリにMakefileを生成します。あなたがのクリーンコピーを抽出することから始めなければならない

$ ./mrpt_example1 
L: (0,4,2) 
R: (2.000,1.000,45.00deg) 
C: (x,y,z,yaw,pitch,roll)=(0.5000,0.5000,1.5000,-90.00deg,0.00deg,-90.00deg) 
R+C:(x,y,z,yaw,pitch,roll)=(2.0000,1.7071,1.5000,-45.00deg,-0.00deg,-90.00deg) 
Computation in: 0.0857 us 
L': (-3.03553,-0.5,0.207107) 
R(+)C(+)L' = (-5.82867e-16,4,2) 
Should be equal to L = (0,4,2) 
|(R(+)C)-L|= 3.0834 
|L-(R(+)C)|= 3.0834 

注:サンプルプログラムを実行し

$ make 
Scanning dependencies of target mrpt_example1 
[ 50%] Building CXX object CMakeFiles/mrpt_example1.dir/test.o 
[100%] Linking CXX executable mrpt_example1 
[100%] Built target mrpt_example1 

:あなたはその後、サンプルプログラムをコンパイルするmakeを実行することができます

$ ls -1 
CMakeCache.txt 
CMakeFiles 
cmake_install.cmake 
CMakeLists.txt 
Makefile 
README.txt 
test.cpp 

内容はmrpt_example1.tar.gzであり、クリーンコピーでこれらの手順を実行します。


また、あなたはすぐにMakefileを提供サンプルプロジェクトのバージョンを使用することができ、かつ必要とせずにCMake:これはで覆われている

https://github.com/MRPT/mrpt/tree/master/doc/mrpt_example1-with-Makefile

次のチュートリアル:

http://www.mrpt.org/tutorials/programming/first-steps/compiling_custom_applications_in_linux_with_a_makefile_and_pkg-config/


ccmakeを使用する必要がある場合:

まず、mrpt_example1.tar.gzの内容のクリーンコピーを抽出します。

は、抽出されたmrpt_example1ディレクトリを入力して実行します。設定するには、

Press [enter] to edit option 
Press [c] to configure 
Press [h] for help   Press [q] to quit without generating 
Press [t] to toggle advanced mode (Currently Off) 

プレスc

ccmake . 

これは、次のオプションを使用して対話型のダイアログを提示します。画面上部には次の情報が表示されます。

CMAKE_BACKWARDS_COMPATIBILITY *2.4 
CMAKE_BUILD_TYPE    * 
CMAKE_INSTALL_PREFIX   */usr/local 
EXECUTABLE_OUTPUT_PATH   * 
LIBRARY_OUTPUT_PATH    * 
MRPT_DIR      */usr/share/mrpt 

cを再度設定してください。以下のオプションが利用可能になりましたようになります。

Press [enter] to edit option 
Press [c] to configure  Press [g] to generate and exit 
Press [h] for help   Press [q] to quit without generating 
Press [t] to toggle advanced mode (Currently Off) 

押しgは、出力ファイルを生成して終了(Makefileを含みます)。 Makefileが生成されたこと

お知らせ:

$ ls -1 
CMakeCache.txt 
CMakeFiles 
cmake_install.cmake 
CMakeLists.txt 
Makefile 
README.txt 
test.cpp 

あなたは上記のように、それは、コンパイルされた後の例のプログラムを実行し、サンプルプログラムをコンパイルするmakeを実行することができます。

+0

別のビルドディレクトリから 'cmake'を実行することは、ビルドファイルでソースディレクトリを汚染しないようにすることをお勧めします。もちろん、あなたが修正しようとしていないソフトウェアパッケージにはそれほど重要ではありません。 – mindriot

+0

一般的には有効な点ですが、この特定のケースでは、明示的に使用されるサンプルプロジェクト[README'](https://github.com/MRPT/mrpt/blob/722d6f722395b079217ff432fe943b84ff72f59f/doc/mrpt_example1/README.txt)が明示的にコマンド 'ccmake 'を推奨します。その答えは、潜在的な混乱の原因を避けるために、公式の勧告からの逸脱を最小限に抑えるアプローチをとっています。 –

+0

この非常に有益な答えをありがとう! 「ccmake」を使用しているときに 'c'を2回押す必要はありませんでした。また、 'cmake 'を介して代替ルートについて知ることは素晴らしいことです。 – ingkanit

関連する問題