日期:2014-05-16  浏览次数:20600 次

使用gcc生成的静态库,能生成,但编译主程序就是不行。
my_test.h 

#ifndef _MY_TEST_H
#define _MY_TEST_H
#include <stdio.h>
#include <stdlib.h>

char *my_test(char *str);

#endif


my_test.c 

#include "my_test.h"


char *my_test(char *str){
        return str;
}


main.c

#include "my_test.h"

int main(){
        char str[10] ="good";
        printf("%s",my_test(str));
}


编译过程:

gcc -c my_test.c

ar crv libmytest.a my_test.o 

gcc -o main -L. -lmytest -static main.c 这步就不行了

------解决方案--------------------
吧-L这一串放到最后面去

gcc -o main main.c -L./ -lmytest