linux 库编译和使用笔记
来源:互联网 发布:星宇记账软件 编辑:程序博客网 时间:2024/06/09 17:10
src(.c文件) inc(头文件) main.c add.c mul.c sub.c
静态库编译和使用
1.gcc -c *.c(生成.o)
2.ar rs libmath.a *.o
3.gcc main.c -L /home/ -l math -I ./inc -o app
4../app
r代表打包到静态库的文件列表s专用于生成静态库
动态库编译和使用(只共享代码 不共享数据)
-fPIC表示 生成与位置无关的代码/相对路径)
-g 代表可以用gdb调试
1.gcc -c -g -fPIC *.c
2.gcc -shared *.o -o libmath.so(gcc -shared -o libmath.so *.o )
3.gcc main.c -L /home/ -l math -I inc -o app
动态库路径修改:1.export LD_LIBRARY_PATH = ./;
2.vi ~/.bashrc export LD_LIBRARY_PATH = /home/;重启终端
3.vi sudo vi /etc/ld.so.conf然后添加路径 sudo ldconfig -v(更新缓存文件)
4.cp libmath.so /usr/lib或cp libmath.so /lib
5.gcc main.c -g -L. -lmath -I ./inc -o app -Wl,-rpath /home/akaedu/bxd
库命名:
soname:访问real name 可以通过soname访问 soname是符号链接只包含共享库的主版本号
linker name 编译时提供给链接器使用.so结尾
real name包含完整的库版本。
创建linker name
in -s libmath.so.1.21 libmath.so
gcc main.c -L . -lmath -I ./inc -o app
静态库编译和使用
1.gcc -c *.c(生成.o)
2.ar rs libmath.a *.o
3.gcc main.c -L /home/ -l math -I ./inc -o app
4../app
r代表打包到静态库的文件列表s专用于生成静态库
动态库编译和使用(只共享代码 不共享数据)
-fPIC表示 生成与位置无关的代码/相对路径)
-g 代表可以用gdb调试
1.gcc -c -g -fPIC *.c
2.gcc -shared *.o -o libmath.so(gcc -shared -o libmath.so *.o )
3.gcc main.c -L /home/ -l math -I inc -o app
动态库路径修改:1.export LD_LIBRARY_PATH = ./;
2.vi ~/.bashrc export LD_LIBRARY_PATH = /home/;重启终端
3.vi sudo vi /etc/ld.so.conf然后添加路径 sudo ldconfig -v(更新缓存文件)
4.cp libmath.so /usr/lib或cp libmath.so /lib
5.gcc main.c -g -L. -lmath -I ./inc -o app -Wl,-rpath /home/akaedu/bxd
库命名:
soname:访问real name 可以通过soname访问 soname是符号链接只包含共享库的主版本号
linker name 编译时提供给链接器使用.so结尾
real name包含完整的库版本。
创建linker name
in -s libmath.so.1.21 libmath.so
gcc main.c -L . -lmath -I ./inc -o app
0 0
- linux 库编译和使用笔记
- linux c 编译和使用库文件
- Linux编译动态链接库和使用
- linux下 编译和使用静态库
- linux编程学习笔记(四) 编译工具和动态库
- Linux 下nanomsg 编译及使用笔记
- 小笔记,在windows和linux下分开编译、在C\C++下都使用C风格编译
- linux下静态库、动态库的编译和使用
- linux下静态库、动态库的编译和使用
- linux编译使用静态库和动态库
- linux 静态库与动态库的编译和使用
- linux下静态库、动态库的编译和使用 .
- linux下静态库、动态库的编译和使用
- linux静态库和动态库编译及使用
- linux下编程动态库和静态库编译使用
- linux编译使用静态库和动态库
- linux静态库和动态库的编译使用
- linux下编译静态库和使用静态库
- Android聊天表情开发
- 测试
- 情殷鉴古是什么意思
- Android Trick: 改变一个apk的packagename的简单流程,就2个步骤
- [HDU1158]DP 工厂雇佣决策
- linux 库编译和使用笔记
- linux基础知识之shell(2)
- 提高win7电脑速度
- 一个较完整的LUA COCOS2DX 操作“类”
- 作死的逆向分析
- hdu 4632 子字符串统计的区间dp
- You must supply a layout_width attr
- jQuery 遍历 - 过滤
- Menu