0

我目前正在尝试为 Solaris 构建第 3 方项目(qt 5.0.1),目前遇到以下错误:

io/qtemporarydir.cpp: In member function 'void QTemporaryDirPrivate::create(const QString&)':
io/qtemporarydir.cpp:150:30: error: 'mkdtemp' was not declared in this scope
gmake[3]: *** [.obj/release-shared/qtemporarydir.o] Error 1

根据我的发现,mkdtemp 应该在 /usr/include 中的 stdlib.h 中找到。但是,在我的 solaris 系统上查看 stdlib.h 时,它没有定义 mkdtemp 方法。

有谁知道这个的解决方法?(或者我如何为 Solaris 编译 Qt ......)

4

1 回答 1

1

从那以后,我发现 Qt 源代码中有一个附加函数,它取代了 mkdtemp 用于没有自己定义它的系统。然而,它被包裹在一个不考虑 Solaris 构建的 #ifdef 语句中。取消注释 #ifdef 包装器修复了该构建

于 2013-04-10T08:07:20.733 回答