gpt4 book ai didi

c - 链接 c 项目时体系结构 x86_64 的 undefined symbol

转载 作者:太空宇宙 更新时间:2023-11-04 02:55:05 25 4
gpt4 key购买 nike

我尝试编译 picoc项目到xcode。没有外部库,只有我在命令行工具 C 项目中导入的 .c 和 .h 文件。

所有 .c 文件编译都没有问题,但是当 XCode 链接时,我收到这些消息:

    Undefined symbols for architecture x86_64:
"_BasicIOInit", referenced from:
_PicocInitialise in platform.o
"_CStdOut", referenced from:
_PrintSourceTextErrorLine in platform.o
_PlatformVPrintf in platform.o
"_MathFunctions", referenced from:
_IncludeInit in include.o
"_MathSetupFunc", referenced from:
_IncludeInit in include.o
"_PicocPlatformScanFile", referenced from:
_IncludeFile in include.o
...

报错的命令如下:

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -v -arch x86_64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -L/Users/laurent/Library/Developer/Xcode/DerivedData/Pico-dhfwbamkhiyphjcwuncbwjsyjlax/Build/Products/Debug -F/Users/laurent/Library/Developer/Xcode/DerivedData/Pico-dhfwbamkhiyphjcwuncbwjsyjlax/Build/Products/Debug -filelist /Users/laurent/Library/Developer/Xcode/DerivedData/Pico-dhfwbamkhiyphjcwuncbwjsyjlax/Build/Intermediates/Pico.build/Debug/Pico.build/Objects-normal/x86_64/Pico.LinkFileList -mmacosx-version-min=10.8 -o /Users/laurent/Library/Developer/Xcode/DerivedData/Pico-dhfwbamkhiyphjcwuncbwjsyjlax/Build/Products/Debug/Pico

Pico.LinkFileList 文件正确包含所有必需的 .o 文件的列表。

由于所有未找到的函数都在正确编译的 .c 文件中(并编译为 .o),我应该怎么做才能避免这些错误?谢谢。

最佳答案

这些符号在 clibrary.c 中;您一定是从要编译的源文件列表中遗漏了它。

你的下一个问题无疑是关于链接可执行文件的库,为了解决这个问题,我建议你查看 Makefile

关于c - 链接 c 项目时体系结构 x86_64 的 undefined symbol ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18600397/

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