linux下的qt缺少iostream,"iostream not found" on Mac OS

在尝试将一个古老的Qt4.8应用程序移植到MacOS X10.10时,开发者遇到'iostream文件未找到'的错误。尽管在Windows到Ubuntu的移植过程中几乎没遇到问题,但在Mac上,即使简单的Hello-World程序能正常运行,这个特定的Qt应用仍然报错。已安装Xcode和命令行工具,并确认iostream存在于/usr/include/c++/4.2.1目录下,但clang++编译器并未显示相应的包含路径。尝试使用g++-4.2.1和unsupported/macx-clang编译器配置,以及指定标准库路径,但问题依旧,且在 '__hash_table' 文件中产生了大量错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

I'm desperately trying to port an ancient Qt 4.8 application to Mac OS X 10.10. I already successfully ported it from Windows to Ubuntu 14.04 with almost no problems. However, on Mac I get the error of "iostream file not found". I know this sounds rather like an issue with my clang++/g++ compiler, however a simple hello-world program runs just fine.

I installed Xcode and the command line tools and I can also find iostream under "/usr/include/c++/4.2.1" since 'g++ -v' outputs:

@Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1

Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)

Target: x86_64-apple-darwin14.1.0

Thread model: posix@

However, I don't know why 'clang++ -v' does not show the include path:

@Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)

Target: x86_64-apple-darwin14.1.0

Thread model: posix@

I get the same error in QtCreator whether I use g++ with ' -spec macx-g++ QMAKE_CXX=g++4.2.1' or clang++ with '-spec unsupported/macx-clang'. Under Toolchain the compiler path also points to clang++ and g++ and not to clang or gcc.

If I additionally specify to use the std library includes with 'INCLUDEPATH+=/usr/include/c++/4.2.1' I get heaps of errors in the file "__hash_table" located in "MacOs/Programme/Xcode/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值