CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
PROJECT(my_muduo C CXX)
SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ansi -pedantic -Wall")
endif()
SET(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
SET(SOURCE_FILES
EventLoop.cc
)
SET(MUDUO_PATH "/home/ubuntu/documents/projects/my_muduo/build/release-install-cpp11")
INCLUDE_DIRECTORIES(${MUDUO_PATH}/include)
LINK_DIRECTORIES(${MUDUO_PATH}/lib ${PROJECT_SOURCE_DIR}/lib)
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR})
ADD_LIBRARY(my_muduo_net ${SOURCE_FILES})
ADD_EXECUTABLE(test1 test1.cc)
TARGET_LINK_LIBRARIES(my_muduo_net muduo_base)
TARGET_LINK_LIBRARIES(test1 muduo_base)
TARGET_LINK_LIBRARIES(test1 my_muduo_net)
TARGET_LINK_LIBRARIES(test1 pthread rt)
注:上面的库的链接顺序有误,应该依次是my_muduo_net, moduo_base, pthread, rt。必须依据这样的依赖关系的顺序进行链接。