2016-10-21 3 views
3

私はcmakeに非常に新しいです。 プロジェクトにeclipse pahoを追加したいので、 "ExternalProject_add"を使用します。ここに私のCMakeLists.txtの抜粋です:cmakeでeclipse pahoを構築するには

ExternalProject_add( 
libressl 
URL ${CMAKE_SOURCE_DIR}/externals/libressl-2.5.0.tar.gz 
CONFIGURE_COMMAND ./configure --disable-hardening --prefix=${CMAKE_BINARY_DIR} 
BUILD_IN_SOURCE 1) 

ExternalProject_add( 
paho 
DEPENDS libressl 
URL ${CMAKE_SOURCE_DIR}/externals/eclipse-paho-mqtt-c-src-1.1.0.tar.gz 
CMAKE_ARGS -DPAHO_WITH_SSL -DOPENSSL_INC_SEARCH_PATH=${CMAKE_SOURCE_DIR}/include -DOPENSSL_LIB_SEARCH_PATH=${CMAKE_SOURCE_DIR}/lib 
BUILD_COMMAND make 
BUILD_IN_SOURCE 1) 

事はlibresslはちょうど良い建物です。ご覧のとおり、autoconf-toolsを使用しています。

私の問題は、「構成ステップ」でpahoがエラーをスローすることです。

~/projects/cmake_test/CL_Test/build$ cmake .. 
-- Configuring done 
-- Generating done 
-- Build files have been written to: /projects/cmake_test/CL_Test/build 
:~/projects/cmake_test/CL_Test/build$ make 
[ 50%] Built target libressl 
[ 56%] Performing configure step for 'paho' 
CMake Error at /projects/cmake_test/CL_Test/build/paho-prefix/src/paho-stamp/paho-configure-.cmake:16 (message): 
Command failed: 1 

'/usr/bin/cmake' '-DPAHO_WITH_SSL' '-DOPENSSL_INC_SEARCH_PATH=/home/hbaumann/projects/cmake_test/CL_Test/include' '-DOPENSSL_LIB_SEARCH_PATH=/home/hbaumann/projects/cmake_test/CL_Test/lib' '-GUnix Makefiles' '/projects/cmake_test/CL_Test/build/paho-prefix/src/paho' 

CMakeFiles/paho.dir/build.make:107: recipe for target 'paho-prefix/src/paho-stamp/paho-configure' failed 
make[2]: *** [paho-prefix/src/paho-stamp/paho-configure] Error 1 
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/paho.dir/all' failed 
make[1]: *** [CMakeFiles/paho.dir/all] Error 2 
Makefile:83: recipe for target 'all' failed 
make: *** [all] Error 2 

私は、pahoはデフォルトでCMakeを使用してビルドしているため、実際に追加する必要はないと考えました。ここであなたが見ることができる、私のCMakeに関する知識は本当に低いです。

パホタールボールでは、CMakeLists.txtではなく、メインフォルダにMakefileしかありません。

何が恋しいのですか...設定する必要のある特別な設定コマンドがありますか?あなたはGITリポジトリを使用することができ、事前

+0

'私はパホがデフォルトでCMakeを使ってビルドしていると思っていました。どうやってこれを知っていますか?指示[ここ](http://www.eclipse.org/paho/clients/cpp/)を見ると、私はそう言ってはいないでしょうし、確かにあなたはすでにCMakeLists.txtではなくMakefileしか持っていないことが分かっています – Antonio

+0

ええ、それは私を悩ます...私は私のローカルユーザー名ですべてのパス/ディレクトリのエントリをカットしていない気づいた...私の欠陥:(私も自分のプロファイルで私のdisplaynameを変更しようとしましたが、 30日後 – Heiko

+0

私は "パホはデフォルトでcmakeでビルドされている"ということを覚えていません...私の側で間違いかもしれません...私はgit-repoがtar-ボールは、メインディレクトリにCMakeLists.txtがあります。 – Heiko

答えて

2

THX、それはCMakeList.txtを持っています。

ExternalProject_add(
paho 
DEPENDS libressl 
GIT_REPOSITORY "https://github.com/eclipse/paho.mqtt.c.git" 
GIT_TAG "master" 
UPDATE_COMMAND "" 
PATCH_COMMAND "" 
SOURCE_DIR "${CMAKE_BINARY_DIR}/paho_sourcedir" 
CMAKE_ARGS -DPAHO_WITH_SSL=TRUE -DOPENSSL_INC_SEARCH_PATH=${CMAKE_BINARY_DIR}/include -DOPENSSL_LIB_SEARCH_PATH=${CMAKE_BINARY_DIR}/lib -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/paho_prefix 
) 
+0

はい、ありがとう...これは私のために働く!私はすでにアントニオ、タールの構造-ballはgit-repoとは異なります。 – Heiko

関連する問題