我目前正在使用MXE执行交叉编译,尝试与首次使用C ++的libzmq绑定的0MQ进行交叉编译。我已经把zmq.hpp
&包含文件夹中的zmq.h
个文件,但我收到一条错误消息,指出无法找到-lzmq
。我想知道有没有办法为此目的手动将libzmq库添加到MXE?
错误:
/home/mxe/usr/lib/gcc/i686-pc-mingw32/4.8.1/../../../../i686-pc-mingw32/bin/ld: cannot find -lzmq
collect2: error: ld returned 1 exit status
make[1]: *** [release/myapp.exe] Error 1
make[1]: Leaving directory `/home/Desktop/myapp'
make: *** [release] Error 2
答案 0 :(得分:0)
不确定您的确切方案,但是使用MXE几次,我学会了使用当前工作目录中的所有内容,而不是使用标准标题和位置。
即。在您的情况下尝试放置
zmq.hpp & zmq.h in /home/Desktop/myapp
使用""
代替<>
答案 1 :(得分:0)
您可以在MXE邮件列表上询问,它们非常有用。
但是,您也可以通过查看用于创建包的MXE指令来添加zmq,其中包括:
http://mxe.cc/#creating-packages
基本上,MXE基于大量的Makefile和补丁,以使它们在MXE下工作。要添加套餐,您需要创建一个&#39; .mk&#39; makefile在&#39; src&#39;目录,然后弄清楚如何制作补丁。 xz库是一个很好的简单例子:
https://github.com/mxe/mxe/blob/master/src/xz.mk
祝你好运。