gpt4 book ai didi

c - 为什么 gcc 找不到我的静态库?

转载 作者:太空狗 更新时间:2023-10-29 16:33:26 25 4
gpt4 key购买 nike

我正在尝试将 cspec 库链接到我的 C 项目中。这是我位于测试文件夹中的 Makefile:

all: test

test: sample.o
gcc -Wall -o test sample.o -L ../lib/cspec -llibcspec.a

sample.o: sample.c
gcc -Wall -c sample.c -I../lib/cspec

clean:
rm -rf *o test

我的目录是:

/
/src
/lib
/lib/cspec
/tests

当我运行 make 时,我收到以下错误:

gcc -Wall -o test sample.o -L ../lib/cspec -llibcspec.a
/usr/bin/ld: cannot find -llibcspec.a

我已确保 libcs​​pec.a 文件位于 lib/cspec 文件夹中,但为了确保我也尝试将它放在测试文件夹中并删除 -L 命令,但无济于事。

最佳答案

改变:

gcc -Wall -o test sample.o -L ../lib/cspec -llibcspec.a

到:

gcc -Wall -o test sample.o -L ../lib/cspec -lcspec

(按照惯例,gcc 和其他 *nix 编译器会自动添加 lib 前缀和适当的后缀。)

关于c - 为什么 gcc 找不到我的静态库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12187078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com