我目前正在尝试为Solaris构建第三方项目(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方法。
有没有人知道这方面的解决方法? (或者我如何编译Qt for Solaris ...)
答案 0 :(得分:1)
我发现在Qt源代码中有一个额外的函数,它替换了mkdtemp用于没有自己定义它的系统。但它包含在#ifdef语句中,该语句不考虑Solaris构建。取消注释#ifdef包装器修复了构建