linux – 如何将项目(比如zeromq)构建为静态库并将其链接到我的项目中

我想在我的项目中使用zeroMQ
我运行如下配置将libaray构建到我的主文件夹中

./configure --enable-static --disable-shared --prefix=/home/xx/out

然后我链接我的项目

gcc -o myproject x.c y.c /home/xx/out/libzmq.a

但仍有很多链接错误,如下所示:

../zmq/lib/libzmq.a(libzmq_la-ip.o): In function zmq::resolve_ip_interface(sockaddr_storage*,unsigned int*,char const*)':
/home/sureone/share/zeromq-2.2.0/src/ip.cpp:221: undefined reference to std::basic_string

………..

最佳答案

gcc -o myproject x.c y.c /home/xx/out/libzmq.a

由于ZeroMQ(显然)使用C,因此您需要使用适当的编译器驱动程序(在本例中为g)来链接它.

试试这个:

 gcc -c x.c y.c
 g++ -o myproject x.o y.o /home/xx/out/libzmq.a

相关文章

文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限...
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Wi...
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Lin...
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,...
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 Open...