使用zmq静态库时程序编译时链接失败

CMakeLists.txt中已经加上libzmq.a:

link_libraries(libzmq.a)

仍然提示:

E:/proj/ma_master_select/zmq/inc/zmq.hpp:155: undefined reference to `__imp_zmq_errno'
CMakeFiles/ma_master_select.dir/objects.a(main.cpp.obj): In function `zmq::error_t::what() const':
E:/proj/ma_master_select/zmq/inc/zmq.hpp:156: undefined reference to `__imp_zmq_strerror'
CMakeFiles/ma_master_select.dir/objects.a(main.cpp.obj): In function `zmq::context_t::context_t(int, int)':
E:/proj/ma_master_select/zmq/inc/zmq.hpp:543: undefined reference to `__imp_zmq_ctx_new'
E:/proj/ma_master_select/zmq/inc/zmq.hpp:547: undefined reference to `__imp_zmq_ctx_set'
E:/proj/ma_master_select/zmq/inc/zmq.hpp:550: undefined reference to `__imp_zmq_ctx_set'

加上宏ZMQ_STATIC后问题解决。

add_definitions(-DZMQ_STATIC)

你可能感兴趣的:(ZeroMQ)