如何从 .la 文件获取 .so 文件?
FFTW 2.x 构建一个 .la 文件(在 fftw/.libs 目录下)。
我想我需要一个 .so 文件来链接。 (我不确定,因为我是 gcc 新手)。
FFTW 2.x builds a .la file (under fftw/.libs directory).
I think I need a .so file to link to. (I am not sure, because I am a gcc newbie).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一般来说,在Linux上,.so文件是动态库,.a或.la用于静态链接。您需要哪一个取决于您的应用程序以及您如何安装/构建库。有关静态链接与动态链接的教程,请参阅此网站。 另外,您有吗?自己从源代码构建 fftw,还是使用了包管理器?这将有助于回答你的问题。至于使用gcc,请查看这个手册页,它可能清理一些东西。
所以是的,简短的答案是要么坚持使用 .a,要么在构建 fftw 时指定您想要一个共享库。
./configure --enable-shared
In general on Linux, a .so file is dynamic library and a .a or .la is for statically linking with. Which one you need depends on your application and how you installed/built the library. For a tutorial on static vs. dynamic linking see this site. Also, did you build fftw yourself from source, or did you use a package manager? This would help answer your question. As for using gcc, check out this manual page, it might clear some stuff up.
So yeah, the short answer is either to stick with the .a or when building fftw specify that you want a shared library.
./configure --enable-shared