linux 动态链接库

./main


#include<stdio.h>
#include "./lib/dtlib1.h"
int main()
{
    printf("running...\n");
    sayhello();
    return 0;
}



./makefile


all:main libdtlib1.so

libdtlib1.so:dtlib1.o
    gcc -shared -o libdtlib1.so dtlib1.o
dtlib1.o:./lib/dtlib1.h ./lib/dtlib1.c
    gcc -fpic -c ./lib/dtlib1.c
main:main.c
    gcc -o main main.c -ldtlib1
install:
    cp -f ./libdtlib1.so /usr/lib/libdtlib1.so
clean:
    rm -f main *.o *.so


 ./lib/dtlib1.h


#ifndef _DTLIB1_H_
#define _DTLIB1_H_
void sayhello();
#endif

./lib/dtlib1.c


#include "dtlib1.h"
#include <stdio.h>
void sayhello()
{
    printf("fuwck this programer too!\n");
}



收藏于 2013-03-25

posted on 2015-06-01 15:26  阮減显  阅读(107)  评论(0)    收藏  举报

导航