移植rabbitMQ-C

按照文档README.md的说法建立  mkdir build

cd build

cmake ..

然后修改CMakeCach.txt,根据编译链的实际情况,以及调试过程中需要的库,做出修改,其中红色部分是需要修改的地方。

# This is the CMakeCache file.
# For build in directory: /rabbitmq-c-arm2/build
# It was generated by CMake: /usr/local/bin/cmake
# You can edit this file to change values found and used by cmake.
# If you do not want to change any of the values, simply exit the editor.
# If you do want to change a value, simply edit, save, and exit the editor.
# The syntax for the file is as follows:
# KEY:TYPE=VALUE
# KEY is the name of a variable in the cache.
# TYPE is a hint to GUI's for the type of VALUE, DO NOT EDIT TYPE!.
# VALUE is the current value for the KEY.

########################
# EXTERNAL cache entries
########################

//Build Examples
BUILD_EXAMPLES:BOOL=ON

//Build rabbitmq-c as a shared library
BUILD_SHARED_LIBS:BOOL=OFF

//Build rabbitmq-c as a static library
BUILD_STATIC_LIBS:BOOL=ON

//Build tests (run tests with make test)
BUILD_TESTS:BOOL=ON

//Build Tools (requires POPT Library)
BUILD_TOOLS:BOOL=OFF

//Build man pages for Tools (requires xmlto)
BUILD_TOOLS_DOCS:BOOL=OFF

//Path to a program.
CMAKE_AR:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-ar

//Choose the type of build, options are: Debug Release RelWithDebInfo
// MinSizeRel.
CMAKE_BUILD_TYPE:STRING=Release

//Enable/Disable color output during build.
CMAKE_COLOR_MAKEFILE:BOOL=ON

//C compiler.
CMAKE_C_COMPILER:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-gcc

//Flags used by the compiler during all build types.
CMAKE_C_FLAGS:STRING=

//Flags used by the compiler during debug builds.
CMAKE_C_FLAGS_DEBUG:STRING=-g

//Flags used by the compiler during release minsize builds.
CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG

//Flags used by the compiler during release builds (/MD /Ob1 /Oi
// /Ot /Oy /Gs will produce slightly less optimized but smaller
// files).
CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG

//Flags used by the compiler during Release with Debug Info builds.
CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG

//Flags used by the linker.
CMAKE_EXE_LINKER_FLAGS:STRING=-ldl

//Flags used by the linker during debug builds.
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=

//Flags used by the linker during release minsize builds.
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=

//Flags used by the linker during release builds.
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=

//Flags used by the linker during Release with Debug Info builds.
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=

//Enable/Disable output of compile commands during generation.
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF

//Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=/usr/local/lib_rabbitMQ

//Path to a program.
CMAKE_LINKER:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-ld

//Path to a program.
CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make

//Flags used by the linker during the creation of modules.
CMAKE_MODULE_LINKER_FLAGS:STRING=' '

//Flags used by the linker during debug builds.
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=

//Flags used by the linker during release minsize builds.
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=

//Flags used by the linker during release builds.
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=

//Flags used by the linker during Release with Debug Info builds.
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=

//Path to a program.
CMAKE_NM:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-nm

//Path to a program.
CMAKE_OBJCOPY:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-objcopy

//Path to a program.
CMAKE_OBJDUMP:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-objdump

//Value Computed by CMake
CMAKE_PROJECT_NAME:STATIC=rabbitmq-c

//Path to a program.
CMAKE_RANLIB:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-ranlib

//Flags used by the linker during the creation of dll's.
CMAKE_SHARED_LINKER_FLAGS:STRING=' '

//Flags used by the linker during debug builds.
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=

//Flags used by the linker during release minsize builds.
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=

//Flags used by the linker during release builds.
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=

//Flags used by the linker during Release with Debug Info builds.
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=

//If set, runtime paths are not added when installing shared libraries,
// but are added when building.
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO

//If set, runtime paths are not added when using shared libraries.
CMAKE_SKIP_RPATH:BOOL=NO

//Path to a program.
CMAKE_STRIP:FILEPATH=/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-strip

//The CMake toolchain file
CMAKE_TOOLCHAIN_FILE:FILEPATH=/rabbitmq-c-arm2/build/ToolChain.cmake

//If true, cmake will use relative paths in makefiles and projects.
CMAKE_USE_RELATIVE_PATHS:BOOL=OFF

//If this value is on, makefiles will be generated without the
// .SILENT directive, and all commands will be echoed to the console
// during the make.  This is useful for debugging only. With Visual
// Studio IDE projects all commands are done without /nologo.
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE

//Enable SSL support
ENABLE_SSL_SUPPORT:BOOL=ON

//Enable thread safety when using OpenSSL
ENABLE_THREAD_SAFETY:BOOL=ON

OPENSSL_CRYPTO_LIBRARY:FILEPATH=/opt/target/usr/local/lib_openssl/lib/libcrypto.a

//Path to a file.OPENSSL_INCLUDE_DIR:PATH=OPENSSL_INCLUDE_DIR-NOTFOUND
OPENSSL_INCLUDE_DIR:PATH=/opt/target/usr/local/lib_openssl/include

//Path to a library.OPENSSL_SSL_LIBRARY:FILEPATH=OPENSSL_SSL_LIBRARY-NOTFOUND
OPENSSL_SSL_LIBRARY:FILEPATH=/opt/target/usr/local/lib_openssl/lib/libssl.a

//pkg-config executable
PKG_CONFIG_EXECUTABLE:FILEPATH=/usr/bin/pkg-config

//Path containing the popt.h include file
POPT_INCLUDE_DIR:PATH=POPT_INCLUDE_DIR-NOTFOUND

//popt library path
POPT_LIBRARY:FILEPATH=POPT_LIBRARY-NOTFOUND

//Regenerate amqp_framing.h/amqp_framing.c sources (for developer
// use)
REGENERATE_AMQP_FRAMING:BOOL=OFF

//SSL Backend to use, valid options: OpenSSL, cyaSSL, GnuTLS, PolarSSL
SSL_ENGINE:STRING=OpenSSL

//path to the xmlto docbook xslt frontend
XMLTO_EXECUTABLE:FILEPATH=XMLTO_EXECUTABLE-NOTFOUND

//Value Computed by CMake
librabbitmq_BINARY_DIR:STATIC=/rabbitmq-c-arm2/build/librabbitmq

//Value Computed by CMake
librabbitmq_SOURCE_DIR:STATIC=/rabbitmq-c-arm2/librabbitmq

//Value Computed by CMake
rabbitmq-c_BINARY_DIR:STATIC=/rabbitmq-c-arm2/build

//Value Computed by CMake
rabbitmq-c_SOURCE_DIR:STATIC=/rabbitmq-c-arm2

//Dependencies for the target
rabbitmq-static_LIB_DEPENDS:STATIC=general;/opt/target/usr/local/lib_openssl/lib/libssl.a;general;/opt/target/usr/local/lib_openssl/lib/libcrypto.a;general;rt;general;-lpthread;

//Dependencies for the target
rabbitmq_LIB_DEPENDS:STATIC=general;/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/target/usr/lib/libssl.a;general;/opt/mv_pro_5.0/montavista/pro/devkit/arm/v5t_le/target/usr/lib/libcrypto.a;general;rt;general;-lpthread;


########################
# INTERNAL cache entries
########################

//Have library rt
CLOCK_GETTIME_NEEDS_LIBRT:INTERNAL=1
//ADVANCED property for variable: CMAKE_AR
CMAKE_AR-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_BUILD_TOOL
CMAKE_BUILD_TOOL-ADVANCED:INTERNAL=1
//What is the target build tool cmake is generating for.
CMAKE_BUILD_TOOL:INTERNAL=/usr/bin/make
//This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=/rabbitmq-c-arm2/build
//Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=2
//Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=8
//Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=11
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
//Path to CMake executable.
CMAKE_COMMAND:INTERNAL=/usr/local/bin/cmake
//Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=/usr/local/bin/cpack
//Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=/usr/local/bin/ctest
//ADVANCED property for variable: CMAKE_C_COMPILER
CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS
CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//Executable file format
CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
//Name of generator.
CMAKE_GENERATOR:INTERNAL=Unix Makefiles
//Name of generator toolset.
CMAKE_GENERATOR_TOOLSET:INTERNAL=
//Have symbol pthread_create
CMAKE_HAVE_LIBC_CREATE:INTERNAL=
//Have library pthreads
CMAKE_HAVE_PTHREADS_CREATE:INTERNAL=
//Have library pthread
CMAKE_HAVE_PTHREAD_CREATE:INTERNAL=1
//Have include pthread.h
CMAKE_HAVE_PTHREAD_H:INTERNAL=1
//Start directory with the top level CMakeLists.txt file for this
// project
CMAKE_HOME_DIRECTORY:INTERNAL=/rabbitmq-c-arm2
//Install .so files without execute permission.
CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
//ADVANCED property for variable: CMAKE_LINKER
CMAKE_LINKER-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_NM
CMAKE_NM-ADVANCED:INTERNAL=1
//number of local generators
CMAKE_NUMBER_OF_LOCAL_GENERATORS:INTERNAL=4
//ADVANCED property for variable: CMAKE_OBJCOPY
CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_OBJDUMP
CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_RANLIB
CMAKE_RANLIB-ADVANCED:INTERNAL=1
//Path to CMake installation.
CMAKE_ROOT:INTERNAL=/usr/local/share/cmake-2.8
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_SKIP_RPATH
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_STRIP
CMAKE_STRIP-ADVANCED:INTERNAL=1
//uname command
CMAKE_UNAME:INTERNAL=/bin/uname
//ADVANCED property for variable: CMAKE_USE_RELATIVE_PATHS
CMAKE_USE_RELATIVE_PATHS-ADVANCED:INTERNAL=1
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//Result of TRY_COMPILE
C_HAS_inline:INTERNAL=TRUE
//The keyword needed by the C compiler to inline a function
C_INLINE_KEYWORD:INTERNAL=inline
//Details about finding OpenSSL
FIND_PACKAGE_MESSAGE_DETAILS_OpenSSL:INTERNAL=[/opt/target/usr/local/lib_openssl/lib/libssl.a;/opt/target/usr/local/lib_openssl/lib/libcrypto.a][/opt/target/usr/local/lib_openssl/include][v1.0.1e(0.9.8)]
//Details about finding Threads
FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
//Have function getaddrinfo
HAVE_GETADDRINFO:INTERNAL=1
//Have function htonll
HAVE_HTONLL:INTERNAL=
//Have function socket
HAVE_SOCKET:INTERNAL=1
//ADVANCED property for variable: OPENSSL_CRYPTO_LIBRARY
OPENSSL_CRYPTO_LIBRARY-ADVANCED:INTERNAL=1
//ADVANCED property for variable: OPENSSL_INCLUDE_DIR
OPENSSL_INCLUDE_DIR-ADVANCED:INTERNAL=1
//ADVANCED property for variable: OPENSSL_SSL_LIBRARY
OPENSSL_SSL_LIBRARY-ADVANCED:INTERNAL=1
PC_POPT_CFLAGS:INTERNAL=
PC_POPT_CFLAGS_I:INTERNAL=
PC_POPT_CFLAGS_OTHER:INTERNAL=
PC_POPT_FOUND:INTERNAL=
PC_POPT_INCLUDEDIR:INTERNAL=
PC_POPT_LIBDIR:INTERNAL=
PC_POPT_LIBS:INTERNAL=
PC_POPT_LIBS_L:INTERNAL=
PC_POPT_LIBS_OTHER:INTERNAL=
PC_POPT_LIBS_PATHS:INTERNAL=
PC_POPT_PREFIX:INTERNAL=
PC_POPT_STATIC_CFLAGS:INTERNAL=
PC_POPT_STATIC_CFLAGS_I:INTERNAL=
PC_POPT_STATIC_CFLAGS_OTHER:INTERNAL=
PC_POPT_STATIC_LIBDIR:INTERNAL=
PC_POPT_STATIC_LIBS:INTERNAL=
PC_POPT_STATIC_LIBS_L:INTERNAL=
PC_POPT_STATIC_LIBS_OTHER:INTERNAL=
PC_POPT_STATIC_LIBS_PATHS:INTERNAL=
PC_POPT_VERSION:INTERNAL=
PC_POPT_popt_INCLUDEDIR:INTERNAL=
PC_POPT_popt_LIBDIR:INTERNAL=
PC_POPT_popt_PREFIX:INTERNAL=
PC_POPT_popt_VERSION:INTERNAL=
//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: POPT_INCLUDE_DIR
POPT_INCLUDE_DIR-ADVANCED:INTERNAL=1
//ADVANCED property for variable: POPT_LIBRARY
POPT_LIBRARY-ADVANCED:INTERNAL=1
//ADVANCED property for variable: REGENERATE_AMQP_FRAMING
REGENERATE_AMQP_FRAMING-ADVANCED:INTERNAL=1
//ADVANCED property for variable: SSL_ENGINE
SSL_ENGINE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: XMLTO_EXECUTABLE
XMLTO_EXECUTABLE-ADVANCED:INTERNAL=1
_OPENSSL_CFLAGS:INTERNAL=-I/usr/local/include
_OPENSSL_CFLAGS_I:INTERNAL=
_OPENSSL_CFLAGS_OTHER:INTERNAL=
_OPENSSL_FOUND:INTERNAL=1
_OPENSSL_INCLUDEDIR:INTERNAL=/usr/local/include
_OPENSSL_INCLUDE_DIRS:INTERNAL=/usr/local/include
_OPENSSL_LDFLAGS:INTERNAL=-L/usr/local/lib;-lssl;-lcrypto
_OPENSSL_LDFLAGS_OTHER:INTERNAL=
_OPENSSL_LIBDIR:INTERNAL=/usr/local/lib
_OPENSSL_LIBRARIES:INTERNAL=ssl;crypto
_OPENSSL_LIBRARY_DIRS:INTERNAL=/usr/local/lib
_OPENSSL_LIBS:INTERNAL=
_OPENSSL_LIBS_L:INTERNAL=
_OPENSSL_LIBS_OTHER:INTERNAL=
_OPENSSL_LIBS_PATHS:INTERNAL=
_OPENSSL_PREFIX:INTERNAL=/usr/local
_OPENSSL_STATIC_CFLAGS:INTERNAL=-I/usr/local/include
_OPENSSL_STATIC_CFLAGS_I:INTERNAL=
_OPENSSL_STATIC_CFLAGS_OTHER:INTERNAL=
_OPENSSL_STATIC_INCLUDE_DIRS:INTERNAL=/usr/local/include
_OPENSSL_STATIC_LDFLAGS:INTERNAL=-L/usr/local/lib;-lssl;-lcrypto;-ldl
_OPENSSL_STATIC_LDFLAGS_OTHER:INTERNAL=
_OPENSSL_STATIC_LIBDIR:INTERNAL=
_OPENSSL_STATIC_LIBRARIES:INTERNAL=ssl;crypto;dl
_OPENSSL_STATIC_LIBRARY_DIRS:INTERNAL=/usr/local/lib
_OPENSSL_STATIC_LIBS:INTERNAL=
_OPENSSL_STATIC_LIBS_L:INTERNAL=
_OPENSSL_STATIC_LIBS_OTHER:INTERNAL=
_OPENSSL_STATIC_LIBS_PATHS:INTERNAL=
_OPENSSL_VERSION:INTERNAL=1.0.1e
_OPENSSL_openssl_INCLUDEDIR:INTERNAL=
_OPENSSL_openssl_LIBDIR:INTERNAL=
_OPENSSL_openssl_PREFIX:INTERNAL=
_OPENSSL_openssl_VERSION:INTERNAL=
__pkg_config_checked_PC_POPT:INTERNAL=1
__pkg_config_checked__OPENSSL:INTERNAL=1
修改完后运行 cmake --build .

在编译过程中,自带的OPENSSL库不能用,自己重新编译了一个,就ok了。


如果嫌配置CmakeCache.txt麻烦,可以用以下的方法:

在rabbitMQ-c-master目录中建立build目录

把ToolChain.cmake放入其中

在build目录下

cmake-DCMAKE_TOOLCHAIN_FILE=./ToolChain.cmake ..

注意此处的".."

ToolChain.cmake为

set(CMAKE_SYSTEM_NAME Linux)


set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_C_COMPILER  "/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-gcc")
set(CMAKE_CXX_COMPILER  "/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le/bin/arm_v5t_le-g++")
SET(CMAKE_FIND_ROOT_PATH "/opt/mv_pro_4.0.1/montavista/pro/devkit/arm/v5t_le")
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)




你可能感兴趣的:(移植rabbitMQ-C)