Это может быть вопрос Visual Studio в большей степени, чем что-либо еще...
Я пытаюсь собрать пример 0MQ C++, используя VS10 и ZeroMQ 2.2.0.
Я загрузил исходники Windowsи попытался следовать этим инструкциям, чтобы собрать 0MQ статически. В частности:
General\Configuration Type
значение Статическая библиотека (.lib)
C/C++\Code Generation\Runtime Library
значение Многопоточность (/MT)
ZMQ_STATIC
в C/C++\Preprocessor\Preprocessor Definitions
zmq.h
и zmq_utils.h
так что если _MSC_VER
и ZMQ_STATIC
определены, то DLL_EXPORT
также будет определенНа этом этапе 0MQ кажется хорошо построенным.
random
на rand
, srandom
на srand
и snprintf
на _snprintf
C/C++\Code Generation\Runtime Library
значение Многопоточность (/MT)
...\zeromq-2.2.0\include
папка в C/C++\General\Additional Include Directorys
...\zeromq-2.2.0\builds\msvc\Release\*.lib
в Linker\Input\Additional Dependencies
Однако я все еще получаю следующие ошибки связывания:
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_bind
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_close
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_errno
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_init
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_msg_data
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_strerror
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_socket
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_msg_init_size
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_term
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_msg_close
1>zmqexp.obj : error LNK2001: unresolved external symbol __imp__zmq_send
Что я пропустил?