相关博客
https://www.cnblogs.com/sunsky303/p/7731911.html
https://blog.csdn.net/wk_bjut_edu_cn/article/details/81735956

Linux库概念及相关编程(面试重点)

静态库

Linux库概念及相关编程(面试重点)

动态库Linux库概念及相关编程(面试重点)

库的制作

静态库的制作:格式xxxx.a
a. gcc calcufuncs.c -c 生成xxx.o文件
b. ar rcs libcalcufunc.a
calcufuncs.o xxx.o文件生成xxx.a静态库文件

动态库的制作:
a. gcc
-shared -fpic calcufuncs.c -o libcalc.so

-shared 指定生成动态库
-fpic 标准,fPIC 选项作用于编译阶段,在生成目标文件时就得使用该选项,以生成位置无关的代码。

库的使用

静态库:
gcc calculatorT.c -lcalcufunc -L ./ -o
mainProStatic

-lcalcufunc -l是制定要用的动态库,库名砍头去尾
-L告诉gcc编译器从-L制定的路径去找静态库。默认是从/usr/lib /usr/local/lib去找

动态库:
一句话:gcc calculatorT.c -lcalc -L ./ -o mainProDy

其他

1.引用动态库,怎么指定动态库的位置
相关博客:https://www.cnblogs.com/progamming/p/13043652.html

2.带动态库的程序,可以指定该程序运行时候,在LD_LIBRARY_PATH 所指定的路径去找库文件
export LD_LIBRARY_PATH="/home/pi/mydir/test/dongtaiKu"

3.运行时可以用share脚本同时将“指定路径”和“运行文件”两个指令放这一起(脚本名字为start.sh)

export LD_LIBRARY_PATH="/home/pi/mydir/test/dongtaiKu" //指定路径
./mainProDong //运行文件

4.Share脚本需要加一个可执行权限:chmod +x start.sh
最后./start即可

库封装的函数是功能函数,功能函数封装好后移植到自己所需要的程序中去。

相关文章:

  • 2022-12-23
  • 2021-11-13
  • 2021-12-23
  • 2021-06-03
  • 2021-09-24
  • 2022-01-09
  • 2021-06-02
  • 2021-07-23
猜你喜欢
  • 2021-05-01
  • 2021-08-27
  • 2021-11-13
  • 2021-10-10
  • 2021-09-18
  • 2021-07-01
  • 2021-09-14
相关资源
相似解决方案