Bonjour à tous,
J'aimerais un petit coup de pouce si possible de votre part car je suis bloqué avec cmake. En effet, j'aurais besoin d'aide car j'ai des soucis au niveau des links et des includes. Je suis sur un ubuntu 13.10 standard en 64bits.
J'ai en réalité un soucis au niveau des links car j'ai des undefined reference to `amqp_destroy_connection'. Le wrapper c'est une librairie que j'ai récupérer sur github https://github.com/akalend/amqpcpp car c'est plus pratique en C++.
Mon programme très simple :
Et j'obtiens comme erreur à la compilation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <iostream> #include "json.json.h" #include "AMQPcpp.h" int main () { try { AMQP amqp("123123:akalend@localhost:5673/private"); } catch (const std::exception &e) { } return 0; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Hawks.cpp:4:26: fatal error: jsoncpp/json.h: No such file or directory #include <jsoncpp/json.h> ^ compilation terminated. /usr/local/lib/amqpcpp-master/libamqpcpp.a(AMQP.o): In function `AMQP::~AMQP()': AMQP.cpp:(.text+0x2ee): undefined reference to `amqp_destroy_connection' /usr/local/lib/amqpcpp-master/libamqpcpp.a(AMQP.o): In function `AMQP::sockConnect()': AMQP.cpp:(.text+0x1004): undefined reference to `amqp_new_connection' AMQP.cpp:(.text+0x102c): undefined reference to `amqp_open_socket'
Et mon cmakeList.txt :
Est-ce que vous pourriez m'aider à vérifier mon cmake et en m'expliquant ce qui pourrait clocher? En vous remerciant par avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57 # Initialisation de cmake cmake_minimum_required(VERSION 2.8) # Project name test project(Test) set(EXECUTABLE_OUTPUT_PATH ../bin/${CMAKE_BUILD_TYPE}) # Boost library Integration find_package(Boost COMPONENTS system filesystem REQUIRED) include_directories(${Boost_LIBRARY_DIRS}) link_directories(${Boost_INCLUDE_DIRS}) add_definitions(-DBOOST_ALL_NO_LIB) # JSON CPP #AMQP Wrapper cpp include_directories(/usr/local/lib/amqpcpp-master/include) link_directories(/usr/local/lib/amqpcpp-master) # Link Sources files file( GLOB_RECURSE sources_files ../src/source/* ../src/include/* ) # Link includes files include_directories("../src/include") #message(status "*** => ${sources_files}") if(RELEASE) message(STATUS "--- BUILD DE RELEASE ---") else() message(STATUS "--- BUILD DE DEBUG ---") endif(RELEASE) # Déclaration de l'executable add_executable( test ${sources_files} ) target_link_libraries( test ${Boost_LIBRARIES} pthread jsoncpp rabbitmq amqpcpp )
Partager