3

您好我正在尝试使用 icc 编译器(11.1.088)在 Xcode 上编译基于 gcc 的代码,但出现以下错误:

catastrophic error: could not open source file "algorithm"

查看此文件后,它位于 gcc 包含目录中,但我收到数百个错误...

有人有建议吗?

谢谢。

4

4 回答 4

2

我遇到了一个非常顽固的错误,与这个问题非常相似,但解决方案不同。

算法:没有这样的文件或目录

我的解决方案:

#ifdef __cplusplus
#include <algorithm>
#endif

我有#include一个前缀头文件(例如 Xcode 在一个新项目中为您提供的 .pch 文件),这导致它包含在一个 Objective-C 文件中,并且显然algorithm只是 C++。确保所有的 Objective-C 文件都是 Objective-C++ (.mm),或者添加该指令以确保它不包含在这些文件中。

于 2013-05-11T05:36:03.977 回答
0

您将什么设置为基本 SDK?什么版本的 Xcode ?

FWIW 我刚刚尝试使用 Xcode 3.2.3 和 ICC 11.1(当然是在 OS X 10.6 下)进行测试 - 使用标准 Xcode 模板创建了一个新的 C++ 控制台应用程序,添加#include <algorithm>到 main.cc,从默认的 gcc 4.2 切换到 ICC,它编译和运行没有警告或错误。基本 SDK 是系统默认值 (10.6)。

可能只是您安装了错误的 Xcode 和/或 ICC,或者您更改了项目设置(例如基本 SDK),这会导致问题。

于 2010-11-22T12:11:12.273 回答
0

这个问题发生在我的机器上,在开发 iOS 应用程序时。Xcode 版本 4.6.3 (4H1503) & iOS 版本 6.0

我正在使用 AppCode 进行开发,并且 IDE(偶然)添加了以下导入语句:

#import <c++/4.2.1/ext/algorithm>
于 2013-06-19T09:42:55.353 回答
0

我也遇到了这个错误,我只是忘记将源从 .m 更改为 .mm。因此,如果调整 C++ 编译器不起作用,请尝试更改源文件。

于 2019-03-06T05:06:07.217 回答