linux基础学习、vim操作
-
ctrl+shift+t:打开终端
-
vim分屏:末行模式:sp分上下两屏,wsp分左右两屏,ctrl+ww在两屏间切换
-
x删除一个字符
-
r替换一个字符
-
gcc命令:
-
gcc编译信息:gcc main.c -o main
-
gcc编译信息时指定头文件在什么目录:gcc -I./code main.c -o main
-
-c 只编译,生成.o文件,不进行链接
-
-g 包含调试信息
-
-On n=0~3 编译优化,n越大优化得越多
-
-Wall 提示更多警告信息
-
-D
编译预定义宏,注意-D和 之间没空格 -
-E 生成预处理文件
-
-M 生成.c文件与头文件依赖关系用于makefile,包括系统库的头文件
-
-MM 生成.c文件与头文件依赖关系用于makefile,不包括系统库的头文件
-
-fPIC:生成的文件与位置无关:gcc -fPIC -c a.c
-
-
ldd app:ldd能查看gcc -o生成的程序依赖于哪些库
-
动态库(共享库)
-
gcc -shared -Wl,-soname,libmycal.so.1 -o libmyab.so.1.10 a.o b.o 该命令生成libmyab.so.1.10共享库,可以通过libmycal.so.1链接到该共享库
调用该共享库需要在/etc/ld.so.conf下添加该共享库路径,然后sduo config -v更新 -
优点:代码体积小
-
缺点:编译环境得保证有共享库存在
-
-
静态库:库链接进程序中,代码体积大

浙公网安备 33010602011771号