当前位置: 技术问答>linux和unix
○ 使用静态链接库问题?
来源: 互联网 发布时间:2015-07-12
本文导语: File libhello.c /* libhello.c - demonstrate library use. */ #include void hello(void) { printf("Hello, library world.n"); } File libhello.h /* libhello.h - demonstrate library use. */ void hello(void); File demo_use.c...
File libhello.c
/* libhello.c - demonstrate library use. */
#include
void hello(void) {
printf("Hello, library world.n");
}
File libhello.h
/* libhello.h - demonstrate library use. */
void hello(void);
File demo_use.c
/* demo_use.c -- demonstrate direct use of the "hello" routine */
#include "libhello.h"
int main(void) {
hello();
return 0;
}
我把libhello和demo_use放在两个文件夹里编译,使用libhello的时候
gcc -g -o demo_use_static demo_use.o -L. -l"libhello/hello-static"
它提示
/usr/bin/ld: cannot find -l/usr/bin/ld: cannot find -llibhello/hello-static
collect2: ld returned 1 exit status
请问怎么处理?
/* libhello.c - demonstrate library use. */
#include
void hello(void) {
printf("Hello, library world.n");
}
File libhello.h
/* libhello.h - demonstrate library use. */
void hello(void);
File demo_use.c
/* demo_use.c -- demonstrate direct use of the "hello" routine */
#include "libhello.h"
int main(void) {
hello();
return 0;
}
我把libhello和demo_use放在两个文件夹里编译,使用libhello的时候
gcc -g -o demo_use_static demo_use.o -L. -l"libhello/hello-static"
它提示
/usr/bin/ld: cannot find -l/usr/bin/ld: cannot find -llibhello/hello-static
collect2: ld returned 1 exit status
请问怎么处理?
|
gcc -g -o demo_use_static demo_use.o -L. -lhello -static
|
你把libhello.c 做成库了吗,怎么做的?
如果你的文件夹里有libhello.a这个库文件, 按照楼上的办法就应该可以的.
如果你的文件夹里有libhello.a这个库文件, 按照楼上的办法就应该可以的.