so-a--linux---静态--动态--链接库
2011-10-13 15:35
483 查看
//main.c #include "zxc.h" int main() { printfbnq(); return 0; } //zxc.h void printfbnq(); //zxc.c #include <stdio.h> void printfbnq() { long str[56]={0,1}; int i; for(i=2;i<56;i++) { str[i]=str[i-1]+str[i-2]; if(33==i||44==i||55==i) { printf("%ld\n",str[i]); } } } //begin static lib ubuntu@ubuntu:~/gcclearn/gcctest/a$ gcc -c zxc.c ubuntu@ubuntu:~/gcclearn/gcctest/a$ ls main.c zxc.c zxc.h zxc.o ubuntu@ubuntu:~/gcclearn/gcctest/a$ ar -rc libzxc.a zxc.o ubuntu@ubuntu:~/gcclearn/gcctest/a$ ls libzxc.a main.c zxc.c zxc.h zxc.o ubuntu@ubuntu:~/gcclearn/gcctest/a$ gcc -o main.o -c main.c ubuntu@ubuntu:~/gcclearn/gcctest/a$ ls libzxc.a main.c main.o zxc.c zxc.h zxc.o ubuntu@ubuntu:~/gcclearn/gcctest/a$ gcc -o main.exe -L./ main.o -lzxc ubuntu@ubuntu:~/gcclearn/gcctest/a$ ls libzxc.a main.c main.exe main.o zxc.c zxc.h zxc.o ubuntu@ubuntu:~/gcclearn/gcctest/a$ ./main.exe 3524578 701408733 2144908973 //end static lib //begin not static lib ubuntu@ubuntu:~/gcclearn/gcctest/a$ cp main.c zxc.c zxc.h ../so/ ubuntu@ubuntu:~/gcclearn/gcctest/a$ cd ../so ubuntu@ubuntu:~/gcclearn/gcctest/so$ ls main.c zxc.c zxc.h ubuntu@ubuntu:~/gcclearn/gcctest/so$ gcc -fpic -shared -o libzxc.so zxc.c ubuntu@ubuntu:~/gcclearn/gcctest/so$ ls libzxc.so main.c zxc.c zxc.h ubuntu@ubuntu:~/gcclearn/gcctest/so$ gcc -o main.exe -L./ main.c lzxc gcc: lzxc: No such file or directory ubuntu@ubuntu:~/gcclearn/gcctest/so$ sudo cp libzxc.so /lib/ [sudo] password for ubuntu: ubuntu@ubuntu:~/gcclearn/gcctest/so$ sudo ldconfig ubuntu@ubuntu:~/gcclearn/gcctest/so$ gcc -o main.exe -L./ main.c lzxc gcc: lzxc: No such file or directory ubuntu@ubuntu:~/gcclearn/gcctest/so$ gcc -o main.exe -L./ main.c -lzxc ubuntu@ubuntu:~/gcclearn/gcctest/so$ ls libzxc.so main.c main.exe zxc.c zxc.h ubuntu@ubuntu:~/gcclearn/gcctest/so$ ./main.exe 3524578 701408733 2144908973 //end not static lib //cp to my D: ubuntu@ubuntu:~$ cd gcclearn/ ubuntu@ubuntu:~/gcclearn$ ls gcc_01.c multifiles gcctest ubuntu@ubuntu:~/gcclearn$ ubuntu@ubuntu:~/gcclearn$ cp gcctest/a/libzxc.a gcctest/a/zxc.h gcctest/so/libzxc.so /mnt/hgfs/gcctest/ ubuntu@ubuntu:~/gcclearn$ cd gcctest/
相关文章推荐
- Linux-(C/C++)动态链接库生成以及使用(libxxx.so)
- ld.so ld-linux.so* :动态链接器/加载器
- linux 静态动态链接库的编写和使用
- linux简单实现静态链接和动态链接
- Linux入门学习-gcc编译器与静态动态链接_第五章
- linux链接库(动态/静态)的使用详解
- 解析Linux静态与动态链接库的创建和使用
- linux下动态链接问题(so文件的编写与调用)
- Linux下的动态链接库.so文件的使用
- linux 创建 静态 链接库 动态 链接库
- Linux中关于JAVA调用C生成的.so动态链接库
- linux中的动态链接库与静态连接库
- 简介 Linux 静态与动态链接库
- Linux静态链接和动态链接浅析
- 简介 Linux 静态与动态链接库
- Linux动态链接之五:运行时显式加载共享文件.so
- Linux 静态与动态链接库
- Linux下的动态链接库.so文件的使用
- Linux动态链接(2)so初始化执行
- linux下动态链接问题(.so文件的编写与调用)