g++链接和畅饮
我有一个 cpp 文件,其中包含我在 python 中与 SWIG 一起使用的函数。我使用以下命令来编译源代码并创建与 python 一起使用的文件。
swig -c++ -python mini.i
g++ -O2 -c mini.cpp -I/usr/include/python2.4 -I/usr/lib/python2.4
g++ -O2 -c mini_wrap.cxx -I/usr/include/python2.4 -I/usr/lib/python2.4
g++ -shared mini.o mini_wrap.o -o _mini.so
我现在尝试在我的源 cpp 源文件中使用 GSL 。如果我只是编译 GSL 文件,我会尝试
g++ -lgsl -lgslcblas -lm -o mini.o mini.cpp
将 -lgsl -lgslcblas -lm 添加到 swig 编译的行中,但我得到了
g++: -lgsl: linker input file unused because linking not done
g++: -lgslcblas: linker input file unused because linking not done
g++: -lm: linker input file unused because linking not done
如何链接 gsl 库?谢谢
I have a cpp file with functions that I'm using in python with SWIG. I use the following commands to compile the source and create the file to use with python.
swig -c++ -python mini.i
g++ -O2 -c mini.cpp -I/usr/include/python2.4 -I/usr/lib/python2.4
g++ -O2 -c mini_wrap.cxx -I/usr/include/python2.4 -I/usr/lib/python2.4
g++ -shared mini.o mini_wrap.o -o _mini.so
I'm trying now to use GSL in my source cpp source file. If I was just compiling the GSL file I would do
g++ -lgsl -lgslcblas -lm -o mini.o mini.cpp
I've tried adding the -lgsl -lgslcblas -lm to the lines for the swig compile but I get
g++: -lgsl: linker input file unused because linking not done
g++: -lgslcblas: linker input file unused because linking not done
g++: -lm: linker input file unused because linking not done
How can I link the gsl libraries? Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
正如警告消息所述,Swig 不进行链接。将
-lgsl
等放在链接命令上,这是您的最后一个 g++ 命令。Swig does no linking, as the warning message states. Put the
-lgsl
etc. on the link command, which is your last g++ command.