//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/