请问我有一个.so文件,如何在Linux下编程使用呢? (linux 提示.so文件)
-lxx
xx是你的.so文件名
其实使用方法和你使用数学库函数是一样的,源代码中添加
#include ,编译的时候,加上-lm参数。
注:linux下的.so文件为共享库,相当于windows下的dll文件。
扩展资料:
linux下编写调用so文件实例
.so是Linux(Unix)下的动态链接库. 和.dll类似.
比如:
文件有: a.c, b.c, c.c
gcc -c a.c
gcc -c b.c
gcc -c c.c
gcc -shared libXXX.so a.o b.o c.o
要使用的话也很简单. 比如编译d.c, 使用到libXXX.so中的函数, libXXX.so地址是MYPATH
gcc d.c -o d -LMYPATH -lXXX
注意不是告孝-llibXXX
test.c文件和一个test.h,这两个文件要生成libsotest.so文件。然后我还有一个testso.c文件,在这个文件里缓友简面调用libsotest.so中的函数。
编写的过程中,首先是编译so文件,我没有编写makefile文件,而是参考的2里面说的直接写的gcc命令。
因为so文件里面没有main函数,所以扰裤是不可执行的,所以编译的时候要加上-c,只生成目标文件。
相关问题拓展阅读:
- 如何查看 linux 下 so文件
如何查看 linux 下 so文件
方法一:
文件名已经带有版本号:
这种情况下很容易就能够看到软链指向的文件的版本号是 1.0.1
方法二:
当文件名不带版本号时:如下所示
使用readelf -a ***.so读取出文件的版本号,不过此时只能读取到主版本号,version:1
方法三:
如果文件名不带版本号,且又想知道具正键体的版本号的时候怎么办呢?
这时候只能使用傻瓜方法,生成md5值与已知版本号的共享库相对比了。
$ md5sum fcrypt.so.1.0.1
d097363e391e926fdd1687d17bb1ebf7 fcrypt.so.1.0.1
$ md5sum fcrypt.so
d097363e391e926fdd1687d17bb1ebf7 fcrypt.so
两禅清租个md5值一致,由此得出版本贺兆应该是1.0.1。
linux 提示.so文件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux 提示.so文件,请问我有一个.so文件,如何在Linux下编程使用呢?,如何查看 linux 下 so文件的信息别忘了在本站进行查找喔。
编辑:一起学习网
标签:文件,版本号,文件名,方法,函数