码迷,mamicode.com
首页 > 其他好文 > 详细

GCC常见命令汇总

时间:2019-06-16 15:49:04      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:void   gcc   main   出现   ati   静态   编译   stat   oid   

int main()
{
test();
}

 man.c如上:

#include <stdio.h>

void test()
{
printf("test\n");
}

test.c 如上:

将test.c与main.c转换为目标文件test.o,main.o:

gcc -c main.c test.c

将两者链接成可执行文件:

gcc test.o main.o -o liu

将test.o打包为动态库文件libtest.so:

gcc -fPIC -c test.c -o test.o
gcc --share test.o -o libtest.so
or:
gcc -fPIC -shared test.c -o libtest.so

将test.o打包为静态库文件libtest.a:

ar r libtest.a test.o
不能写成:
ar r libtest.a test.c
否则会出现错误。

编译链接动态库(gcc是默认链接动态库):

gcc main.c -L. -ltest -o main

-L.表示动态链接库在当前路径下,若是在其他路径下应该执行以下命令:

gcc main.c -L /xx/yy -ltest -o main

 编译链接静态库:

gcc main.c -L. libtest.a -o main

或者:

gcc main.c -L. -static -ltest -o main

 可执行文件:

./main

 注意需要将动态库文件放到系统目录中。

GCC常见命令汇总

标签:void   gcc   main   出现   ati   静态   编译   stat   oid   

原文地址:https://www.cnblogs.com/liuzhenbo/p/11031648.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!