gpt4 book ai didi

c - 如何在 C 中链接目标文件? "Undefined symbols for architecture x86_64"失败

转载 作者:太空狗 更新时间:2023-10-29 16:19:11 24 4
gpt4 key购买 nike

所以我尝试在我的文件 (file2.c) 中使用另一个 C (file1.c) 文件中定义的函数。为此,我包含了文件 1 (file1.h) 的 header 。

但是,每当我尝试使用 gcc 编译我的文件时,我总是收到以下错误:

Undefined symbols for architecture x86_64:
"_init_filenames", referenced from:
_run_worker in cc8hoqCM.o
"_read_list", referenced from:
_run_worker in cc8hoqCM.o
ld: symbol(s) not found for architecture x86_64

我被告知我需要“将目标文件链接在一起”以便在 file2 中使用 file1 中的函数,但我不知道这意味着什么 :(

最佳答案

我假设您正在使用 gcc,以简单地链接目标文件:

$ gcc -o output file1.o file2.o

要获取目标文件,只需使用编译

$ gcc -c file1.c

这会产生 file1.o 等等。

如果你想将你的文件链接到一个可执行文件,做

$ gcc -o output file1.c file2.c

关于c - 如何在 C 中链接目标文件? "Undefined symbols for architecture x86_64"失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15441877/

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