<MailCore/MailCore.h> 文件未找到
Posted
技术标签:
【中文标题】<MailCore/MailCore.h> 文件未找到【英文标题】:<MailCore/MailCore.h> File Not Found 【发布时间】:2015-04-23 14:24:03 【问题描述】:我在将 mailcore 2 头文件添加到我的 xCode 项目时遇到问题。我已按照他们网站上的所有步骤进行操作:
For ios - If you're targeting iOS, you have to link against MailCore 2 as a static library:
Add libMailCore-ios.a
Add CFNetwork.framework
Add Security.framework
Set 'Other Linker Flags': -lctemplate-ios -letpan-ios -lxml2 -lsasl2 -liconv -ltidy -lz -lc++ -stdlib=libc++ -ObjC
Make sure to use LLVM C++ standard library. Open Build Settings, scroll down to 'C++ Standard Library', and select libc++.
In Build Phases, add a Target Dependency of static mailcore2 ios.
我从桌面上克隆的“build-mac”mailcore2 文件夹中添加了“mailcore2.xcodeproj”xCode 项目。在构建阶段,我在 xCode 的构建阶段部分下的目标依赖项中添加了 'static mailcore2 ios (mailer2)。在“与二进制库链接”部分,我添加了“Security.Framework”、“CFNetwork.framework”和“libMailCore-ios.a”。最后,在构建设置中,我添加了“其他链接器标志” -lctemplate-ios -letpan-ios -lxml2 -lsasl2 -liconv -ltidy -lz -lc++ -stdlib=libc++ -ObjC
由于该项目已经使用了“libc++”的标准 c++ 库,所以我就这样离开了。
我在 ViewController.h 中输入了以下内容: 我得到了如下所示的错误:
'MailCore/MailCore.h' file not found.
我这几天一直在寻找解决方案,但我没有找到解决方案。任何帮助将不胜感激。提前感谢所有回复的人。
***顺便说一句:我在这个项目中使用了“Objective-C”语言。我已经对 github 上的问题页面以及 MailCore 的主网站进行了故障排除。所有的“解决方案”都没有解决我遇到的 xCode 错误。
【问题讨论】:
【参考方案1】:在我看来,您在目标“标题搜索路径”构建设置中缺少包含“MailCore”。
根据https://github.com/MailCore/MailCore,你需要
在您应用的目标下,切换到构建设置。找到“标题 搜索路径”在构建设置中并添加 "$(BUILT_PRODUCTS_DIR)/../../include"
您可以通过以下方式进行设置:
-
找出磁盘上“MailCore”库头文件的路径
选择您的目标,然后选择“构建设置”选项卡并向下滚动到“标题搜索路径”
双击现有值测试(或空白条目,如果没有)
-
出现窗口时,单击“+”添加新行,然后输入“$(BUILT_PRODUCTS_DIR)/../../include”(双引号)。
将第二列从“非递归”更改为“递归”,以确保 Xcode 将递归搜索标题。
然后编译您的应用程序,您应该会看到现在找到了标头。
【讨论】:
感谢您的回复!当您说“MailCore”库时,您是指克隆的邮件文件夹还是 build-mac 文件夹? 我指的是包含 MailCore 库标题的文件夹。当您获得该库时,它还应该与一个包含该库标题的文件夹一起分发。我刚刚更新了我的答案以使其更清晰。 我特别不熟悉 MailCore。但是,您的编译器错误特别提到了“MailCore/MailCore.h”。因此,您的代码期望存在一个名为“MailCore”的文件夹,并包含一个名为“MailCore.h”的标头。此“MailCore”文件夹所在的位置是您要设置路径的位置。 好的。谢谢。我假设它在 build-mac 文件夹中。如果它不起作用,我将尝试使用另一个文件夹。 :) 其实我从这个网站上找到了具体的'Header Search Path'配置:github.com/MailCore/MailCore。我已经根据这个更新了我的答案。【参考方案2】:上面没有任何帮助!!!!
这可能会对您有所帮助,它解决了我找不到的“MailCore/MailCore.h”:
我的带有 MailCore2 的项目可以构建得很好(所以 DEBUG 模式运行得很好),但是当为 AdHoc 分发(使用 RELEASE 配置)归档它时,它会突然说“找不到 MailCore/MailCore.h”!!!与 ikr。
我刚刚进入派生数据,并找到了 DEBUG 配置的库和标头的路径(顺便说一句,AdHoc 和 Release 文件夹都在那里但为空!!!):
(您可以从 Organizer\Projects\ 选择您的项目进入该文件夹,将显示部分派生数据路径,单击右箭头进入 finder 中的文件夹)
/Users/YOURUSERNAME/Library/Developer/XCode/DerivedData/YOURAPPNAME-SOMERANDOMLETTERS/Build/Products/Debug-iphoneos/
复制并添加(在 PROJECT 和 TARGETS 构建设置中)到:
-
我的存档配置的标题搜索路径(使其递归)
我的存档配置的库搜索路径(使其递归)
因此找到该路径并将其添加到您想要的配置中并使其递归。
希望它对某人有所帮助。
【讨论】:
谢谢!!!我一直在寻找解决这个问题的方法一个月!我的程序只能在调试模式下工作,但是当它被设置为发布时,我会得到同样的错误!如果您的解决方案解决了我的问题,我会通知您。再次感谢! @iProgramIt: 所以你需要将此路径添加到发布行,即这些搜索路径的配置以上是关于<MailCore/MailCore.h> 文件未找到的主要内容,如果未能解决你的问题,请参考以下文章