1 cd ./AMQP-CPP/examples/boost$
2.cmake .
提示boost版本太低,
首先要编译生成boost安装工具bjam
进入boost目录执行:
./bootstrap.sh
然后执行刚生成的
./bjam -s HAVE_ICU=1
编译开始,大约半小时,全部编译结束。
./bjam install --prefix=/usr
3.make
又报错,把日志输到文件中
make -j4 2>~err
发现是要设置C++11编译
在CMakeLists.txt
cmake_minimum_required(VERSION 3.2)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
cmake .
make
完毕。
CMakeLists.txt
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") set(Boost_USE_STATIC_LIBS ON) set(Boost_USE_MULTITHREADED ON) set(Boost_USE_STATIC_RUNTIME OFF) find_package(Boost 1.55 REQUIRED COMPONENTS system) if(NOT Boost_FOUND) message( FATAL_ERROR "boost must be installed") endif() include_directories(${Boost_INCLUDE_DIRS}) add_library(asio_handler asiohandler.cpp asiohandler.h) target_link_libraries(asio_handler ${Boost_LIBRARIES}) set(PROGS send receive new_task worker emit_log receive_logs emit_log_direct receive_logs_direct emit_log_topic receive_logs_topic rpc_client rpc_server ) find_package (Threads) foreach(item ${PROGS}) add_executable(${item} "${item}.cpp") target_link_libraries(${item} amqp-cpp asio_handler ${CMAKE_THREAD_LIBS_INIT}) endforeach(item) #little hack file(GLOB AMQCPP_HEADERS ${PROJECT_SOURCE_DIR}/include/*) file(COPY ${AMQCPP_HEADERS} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/amqpcpp) include_directories(${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})