只是一个帖子来帮助那些尝试这样做的人,因为我没有博客.
这也适用于linux.随意编辑并改进它.
在尝试使用VS 2012构建Qt5(32位)的障碍过程中,我遇到了另一个构建错误.
它是:
(设置PATH = C:\ Users\daniel347x\Desktop\Backup\__ Dan_Root\qt5\qtbase\lib;%PATH:)= ^)%)&C:\ Users\daniel347x\Desktop\Backup__Dan_Root\qt5\qtbase\bin\uic.exe对话框\ qfiledialog.ui -o ui_qfiledialog.h
NMAKE:致命错误U1077:'(设置':返回代码'0xc0000135'
停止.
当我执行详细的Google/StackOverflow搜索时,我找不到任何与(set PATH=...;%PATH:)=^)%)失败问题相关的信息(返回错误代码0xc0000135).
请注意,nmake很长一段时间(超过1小时)快乐地切换目录,运行中间.exe,以及编译和链接代码文件.
我在32位Visual Studio 2012工具命令提示符下运行nmake(以及运行configure); 据我所知,我的所有path变量都已正确设置(它们包括32位Perl和32位Python的路径,尽管我认为这不是相关的).
我已重新启动计算机,并运行具有管理员权限的VS 2012工具命令提示符(如果是权限错误),尝试运行nmake,并发生相同的错误.
然后我试图弄清楚错误究竟是什么.那时,我对这个命令行语句的语法感到困惑,该语句显然是在Makefile触发的shell脚本中执行的:
(set PATH=...;%PATH:)=^)%)
^^^^^^ // What do the symbols :)=^)% mean?
Run Code Online (Sandbox Code Playgroud)
我不明白这个脚本的上下文中的符号:)= ^)%.
有人可以告诉我这些符号在Windows shell脚本的上下文中是什么意思(在nmakeMakefile 的上下文中执行(使用VS 2012构建32位Qt5))?
作为一个附加的可选问题,我可以做些什么来克服这个错误并继续构建Qt5而不会阻止进度的这个错误?
有没有人使用Microsoft Visual Studio C++ 2015在Windows上成功构建Qt的WebEngine/QtWebEngine/QWebEngine?
必要的先决条件是什么?
我设法自己构建Qt,但QtWebEngine被跳过了,所以我尝试nmake module-qtwebengine了失败有几个原因.
我试图用VS2012编译器构建Qt5,遇到了另一个障碍.
启用ICU时(配置命令行中的"-icu",以及VS2012中正确的32位ICU构建以及所有ICU路径(header,.lib和.dll)的正确包含),qtbase\src\corelib\codecs\qtextcodec.cpp返回行688 当要求名称为"US-ASCII"的编解码器时,NULL编解码器(ICU无法返回编解码器).
特别:
QTextCodec* QTextCodec::codecForLocale()
{
QCoreGlobalData *globalData = QCoreGlobalData::instance();
if (!globalData)
return 0;
QTextCodec *codec = globalData->codecForLocale.loadAcquire();
if (!codec) {
#ifdef QT_USE_ICU
// THIS BLOCK IS REACHED WHEN ICU IS ENABLED
textCodecsMutex()->lock();
// ***
// The following codec returned is NULL!!!
// (Internally, it sets the codec name to "US-ASCII",
// and fails to find a codec with this name)
// ***
codec = QIcuCodec::defaultCodecUnlocked();
textCodecsMutex()->unlock();
#else
// setupLocaleMapper locks as necessary
codec = …Run Code Online (Sandbox Code Playgroud) qt ×3
qt5 ×3
c++ ×2
build ×1
compilation ×1
icu ×1
makefile ×1
qtwebengine ×1
shell ×1
windows-7 ×1