gcc使用原理

gcc使用原理

gcc工作原理 预处理gcc -E 编译 gcc -S 汇编 gcc -c 链接 gcc 无参数

gcc c源文件.c -o 生成可执行文件名称 不指定可执行文件名称默认生产a.out

gcc编译时指定 -I头文件位置(头文件在可执行文件目录中不需要指定位置)

-D 指定宏位置

-O1默认优化 -O3最高级优化 … 静态库 命名规则 lib+库名字+.a

制作静态库步骤 生成.o文件 gcc c源文件 -c

打包.o文件 ar rcs lib静态库文件名字.a + 上一步生成的.o文件

发布 给客户 静态库文件和头文件两部分

客户拿到静态库和头文件后,可以自己再写个c程序来调用静态库和头文件里面的函数,然后再gcc可执行文件发布出去,发布出去不用再给别人前面的静态库和头文件了(这是优点),因为在生成可执行文件就打包进去了。所以静态库缺点就是容量大,如果库文件或者头文件发生改变,要重新生成可执行文件,比较麻烦。

… 动态库(共享库) 命名规则 lib+库名字+.so

制作动态库步骤 生成.o文件 gcc c源文件 -fPIC -c

打包.o文件 gcc -shared -o lib静态库文件名字.so + 上一步生成的.o文件

客户拿到动态库和头文件后,可以自己再写个c程序,用动态库连接器调用(ldd + 可执行文件 可查看,最后一排就是动态库连接器ld.so.conf,其实也是一个库文件在/etc下,一般都是把自己写的动态库位置文件夹路径,写到这个文件里面,然后再更新系统库文件ldconfig -v,不然客户发布的可执行文件找不到库报错)动态库和头文件里面的函数,然后再gcc可执行文件发布出去

不要惧怕黑暗,人间没有永恒的夜晚;不要担心严寒,

gcc使用原理

相关文章:

你感兴趣的文章:

标签云: