我试图在我的程序中使用live555库。我使用CMake作为构建系统。我做这个的CMakeLists.txt:使用CMake编译针对live555静态库
aux_source_directory(. SRC_LIST)
include_directories("${PROJECT_SOURCE_DIR}/libs/live/BasicUsageEnvironment/include")
include_directories("${PROJECT_SOURCE_DIR}/libs/live/UsageEnvironment/include")
include_directories("${PROJECT_SOURCE_DIR}/libs/live/groupsock/include")
include_directories("${PROJECT_SOURCE_DIR}/libs/live/liveMedia/include")
link_directories("${PROJECT_SOURCE_DIR}/libs/live/BasicUsageEnvironment")
link_directories("${PROJECT_SOURCE_DIR}/libs/live/UsageEnvironment")
link_directories("${PROJECT_SOURCE_DIR}/libs/live/groupsock")
link_directories("${PROJECT_SOURCE_DIR}/libs/live/liveMedia")
add_executable(${PROJECT_NAME} ${SRC_LIST})
set(LIVE_LIBRARIES BasicUsageEnvironment UsageEnvironment groupsock liveMedia)
target_link_libraries(${PROJECT_NAME} ${OpenCV_LIBS} x264 avcodec swscale ${LIVE_LIBRARIES})
编译/链接我得到了很多的错误与此类似:
/home/davide/program/libs/live/groupsock/libgroupsock.a(NetAddress.o):-1: In function `AddressPortLookupTable::AddressPortLookupTable()':
每个库已经编译。似乎这些图书馆彼此依赖,我必须将它们连接在一起或以特定顺序连接。有谁知道这是否是这种情况?怎么做?
2013-10-30
Davide