Xcode编译main.cpp出现x86_64架构未定义符号_CFRelease等错误求助
解决Xcode编译C++项目时的Undefined symbols错误
嘿,刚接触C++和Xcode是吧?别慌,这个错误我当初折腾DeckLink SDK的时候也踩过坑😉
你看到的Undefined symbols for architecture x86_64: "_CFRelease"这类报错,本质是编译器找不到CoreFoundation框架里的函数实现——_CFRelease、_CFStringGetCString这些都是CoreFoundation的核心API,而Xcode默认不会自动帮你的项目链接这个框架,所以编译阶段就会报“未定义符号”的错误。
下面是具体的解决步骤:
- 打开你的Xcode项目,选中左侧导航栏最顶部的项目根文件(蓝色图标)
- 在右侧面板切换到Build Phases标签页
- 找到Link Binary With Libraries分组,点击左下角的
+按钮 - 在弹出的搜索框里输入
CoreFoundation,找到对应的框架后选中,点击Add完成添加
添加完框架后重新编译,这些错误应该就消失了。另外提个小提醒:如果你是用DeckLink SDK开发,记得确认SDK的头文件路径已经正确添加到项目的Header Search Paths中,不然可能还会遇到其他编译问题哦。
内容的提问来源于stack exchange,提问作者Yvonne
相关产品推荐
相关产品推荐

