尝试按照这里的说明为mw windows7 (64位)构建jzmq:http://www.zeromq.org/bindings:java (在底部有一个特定于win64机器的部分)当我进入步骤5“安装了NSIS后,您可以跳转到构建软件包或直接构建库”。我在100%构建后收到一长串未解析的外部符号:例如:
Linking CXX shared library lib\jzmq.dll
Creating library lib\jzmq.lib and object lib\jzmq.exp
Context.cpp.obj : error LNK2019: unresolved external symbol _zmq_errno reference
d in function _Java_org_zeromq_ZMQ_00024Context_construct@12
Socket.cpp.obj : error LNK2001: unresolved external symbol _zmq_errno
Context.cpp.obj : error LNK2019: unresolved external symbol _zmq_init referenced
in function _Java_org_zeromq_ZMQ_00024Context_construct@12
Context.cpp.obj : error LNK2019: unresolved external symbol _zmq_term referenced
in function _Java_org_zeromq_ZMQ_00024Context_finalize@8
Poller.cpp.obj : error LNK2019: unresolved external symbol _zmq_poll referenced
in function _Java_org_zeromq_ZMQ_00024Poller_run_1poll@24我在系统path变量中设置了C:\zmq\zeromq-3.2.2\lib\x64。我修改了第101行的CMakeLists.txt以指向我的zeromq-3.2.2目录,即,
include_directories(
# /zeromq/zeromq-2.1.10/include
/zmq/zeromq-3.2.2/include
${JNI_INCLUDE_DIRS}
)
link_directories(
# /zeromq/zeromq-2.1.10/build/lib
# /zeromq/zeromq-2.1.10/build64/lib
/zmq/zeromq-3.2.2/lib/x64
)我认为另一个path变量丢失了,或者我的CMakeLists.txt中的某些东西指向了错误的位置,但目前我不确定我应该寻找什么。任何帮助我构建jzmq的人都将不胜感激。
发布于 2013-03-04 22:16:20
我最终使用的是Visual Studio2010Pro,而不是CMake。我为x64设置了一个新的构建配置,并复制了所有32位设置,然后确保将库和资源变量定义到它们的位置,构建没有问题。对不起,CMake,祝你下次好运。
https://stackoverflow.com/questions/15138192
复制相似问题