请问我有一个.so文件,如何在Linux下编程使用呢?

请问我有一个.so文件,如何在Linux下编程使用呢?,第1张

-lxx

xx是你的.so文件

其实使用方法和你使用数学库函数是一样的,源代码中添加

#include <math.h>,编译的时候,加上-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需要的三个重要镜像:u-boot、uimage、filesystem目的:刚买的开发板,在没有任何了解的情况下首先安装一个linux *** 作系统,我们采用光盘资料中提供的三个镜像(软件平台)。我们的目的就是把三个文件烧写到开发板的flash里面,不用管他的存放地址,按照说明手册的方法可以烧入后就可以正常启动了,我已经烧写成功进入 *** 作系统了。

简单介绍:硬件平台是扬创的三星2440套餐5,ARM9内核,光盘提供winCE和linux两个 *** 作系统的移植方法。这里我们已经成功移植了WINCE,比较简单,只要按照手册的方法一步一步进行就可以了,我们要所的linux,这个手册说明不是很详细,经过摸索我们算是移植到了板上,其实只是把光盘提供的三个镜像烧入到了开发板上,可以运行进入 *** 作系统而已,至于 *** 作系统的定制还有一系列 *** 作还要继续研究。下面就说说这个简单的烧入 *** 作,虽然简单,但是也是查了很多资料后迂回完成的,其中走了很多弯路!u-boot,是linux *** 作系统的引导文件,他和vivi是一样是bootloader。源代码不同,如果你用u-boot那你就要烧入与之对应的内核和文件系统,如果用vivi也一样,要烧入和vivi对应的内核以及文件系统。Uimage,这里就是我们所说的内核kernel。Filesystem,文件系统。三个镜像烧入后再上电就可以启动 *** 作系统了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8440109.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-16
下一篇2023-04-16

发表评论

登录后才能评论

评论列表(0条)

    保存