我有一个 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
我现在尝试使用 GSL在我的源 cpp 源文件中。如果我只是编译 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 库?谢谢
最佳答案
正如警告消息所述,Swig 不进行链接。将 -lgsl
等放在链接命令上,这是您的最后一个 g++ 命令。
关于python - g++ 链接和 swig,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5302933/