在尝试构建时我得到了这个错误:
对'uuid_generate'的未定义引用
对'uuid_unparse'的未定义引用
这是我的CMakeLists.txt文件:
cmake_minimum_required(VERSION 3.6)
project(Synergy)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -luuid -pthread")
find_package (Threads)
set(SOURCE_FILES Functions.cpp Inotify.cpp Inotify.h main.cpp Master.h Message.cpp Message.h Server.cpp Server.h Threads.cpp )
add_executable(synergy_server ${SOURCE_FILES})
Run Code Online (Sandbox Code Playgroud)
我可以通过自己创建Makefile并添加-luuid标志来解决这个问题.
但我想用CMake做,我试图在CMakeLists.txt文件中添加此标志,但它没有帮助:(
我安装了uuid-dev(这不是问题)
希望您能够帮助我.
祝你今天愉快
编辑:我添加target_link_libraries(Synergy uuid)到文件的末尾,它的工作原理,但有一个更好的方法(看下面的答案)