• 2942阅读
  • 3回复

[讨论]qt5.9.0静态编译 msvc2017出错 [复制链接]

上一主题 下一主题
离线草长莺飞
 

只看楼主 倒序阅读 楼主  发表于: 2020-03-06
1,configure.bat -mp -confirm-license -opensource -platform win32-msvc -debug-and-release -static -force-asserts -prefix C:\Qt\Qt5.9.0\5.9\msvc2017_64-static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests
2,执行nmake后报错如下图:

NMAKE : fatal error U1095: 扩展命令行“echo compiling .moc\debug\moc_qgeocodereply.cpp .moc\debug\moc_qgeocodingmanagerengine.cpp .moc\debug\moc_qgeocodingmanager.cpp .moc\debug\moc_qgeoroutereply.cpp .moc\debug\moc_qgeoroutingmanagerengine.cpp .moc\debug\moc_qgeoroutingmanager.cpp .moc\debug\moc_qgeoserviceprovider.cpp .moc\debug\moc_qplacecontentreply.cpp .moc\debug\moc_qplacereply.cpp .moc\debug\moc_qplacedetailsreply.cpp .moc\debug\moc_qplaceidreply.cpp .moc\debug\moc_qplacematchreply.cpp .moc\debug\moc_qplacesearchreply.cpp .moc\debug\moc_qplacesearchsuggestionreply.cpp .moc\debug\moc_unsupportedreplies_p.cpp .moc\debug\moc_qplacemanager.cpp .moc\debug\moc_qplacemanagerengine.cpp .moc\debug\moc_qgeomapparameter_p.cpp .moc\debug\moc_qgeotiledmapscene_p.cpp .moc\debug\moc_qgeomap_p.cpp .moc\debug\moc_qgeotiledmap_p.cpp .moc\debug\moc_qgeotilefetcher_p.cpp .moc\debug\moc_qgeomappingmanager_p.cpp .moc\debug\moc_qgeomappingmanagerengine_p.cpp .moc\debug\moc_qgeotiledmappingmanagerengine_p.cpp .moc\debug\moc_qabstractgeotilecache_p.cpp .moc\debug\moc_qgeofiletilecache_p.cpp .moc\debug\moc_qgeotiledmapreply_p.cpp .moc\debug\moc_qgeorouteparser_p.cpp .moc\debug\moc_qgeorouteparserosrmv5_p.cpp .moc\debug\moc_qgeorouteparserosrmv4_p.cpp .moc\debug\moc_qdeclarativegeomapitemview_p.cpp .moc\debug\moc_qdeclarativegeoserviceprovider_p.cpp .moc\debug\moc_qdeclarativegeocodemodel_p.cpp .moc\debug\moc_qdeclarativegeoroutemodel_p.cpp .moc\debug\moc_qdeclarativegeoroute_p.cpp .moc\debug\moc_qdeclarativegeoroutesegment_p.cpp .moc\debug\moc_qdeclarativegeomaneuver_p.cpp .moc\debug\moc_qdeclarativegeomap_p.cpp .moc\debug\moc_qdeclarativegeomaptype_p.cpp .moc\debug\moc_qdeclarativegeomapitembase_p.cpp .moc\debug\moc_qdeclarativegeomapquickitem_p.cpp .moc\debug\moc_qdeclarativecirclemapitem_p.cpp .moc\debug\moc_qdeclarativerectanglemapitem_p.cpp .moc\debug\moc_qdeclarativepolygonmapitem_p.cpp .moc\debug\moc_qdeclarativepolylinemapitem_p.cpp .moc\debug\moc_qdeclarativeroutemapitem_p.cpp .moc\debug\moc_qdeclarativegeomapparameter_p.cpp .moc\debug\moc_qdeclarativegeomapcopyrightsnotice_p.cpp .moc\debug\moc_qquickgeomapgesturearea_p.cpp .moc\debug\moc_qdeclarativegeomapitemgroup_p.cpp .moc\debug\moc_qquickgeocoordinateanimation_p.cpp .moc\debug\moc_qdeclarativesupportedcategoriesmodel_p.cpp .moc\debug\moc_qdeclarativesearchsuggestionmodel_p.cpp .moc\debug\moc_qdeclarativesearchresultmodel_p.cpp .moc\debug\moc_qdeclarativereviewmodel_p.cpp .moc\debug\moc_qdeclarativeplaceimagemodel_p.cpp .moc\debug\moc_qdeclarativecontactdetail_p.cpp .moc\debug\moc_qdeclarativecategory_p.cpp .moc\debug\moc_qdeclarativeplace_p.cpp .moc\debug\moc_qdeclarativeplaceattribute_p.cpp .moc\debug\moc_qdeclarativeplaceicon_p.cpp .moc\debug\moc_qdeclarativeplaceuser_p.cpp .moc\debug\moc_qdeclarativeratings_p.cpp .moc\debug\moc_qdeclarativesupplier_p.cpp .moc\debug\moc_qdeclarativesearchmodelbase_p.cpp .moc\debug\moc_qdeclarativeplacecontentmodel_p.cpp .moc\debug\moc_qdeclarativeplaceeditorialmodel_p.cpp  && cl -c -FIQtLocationDepends -YuQtLocationDepends -Fp.pch\debug\Qt5Locationd_pch.pch -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zi -MTd -utf-8 -D_HAS_EXCEPTIONS=0 -MP -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 /Fd..\..\lib\Qt5Locationd.pdb -DUNICODE -DWIN32 -DWIN64 -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_LOCATION_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_EXCEPTIONS -DQT_FORCE_ASSERTS -DQT_POSITIONING_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I..\3rdparty\poly2tri -I..\3rdparty\clipper -I..\3rdparty\clip2tri -I..\positioning -I..\imports\positioning -I. -Imaps -Iplaces -Ideclarativemaps -Ideclarativeplaces -I..\..\include -I..\..\include\QtLocation -I..\..\include\QtLocation\5.9.0 -I..\..\include\QtLocation\5.9.0\QtLocation -Itmp -I..\..\include\QtPositioning\5.9.0 -I..\..\include\QtPositioning\5.9.0\QtPositioning -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQuick\5.9.0 -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQuick\5.9.0\QtQuick -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtGui\5.9.0 -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtGui\5.9.0\QtGui -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQml\5.9.0 -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQml\5.9.0\QtQml -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtCore\5.9.0 -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtCore\5.9.0\QtCore -I..\..\include\QtPositioning -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQuick -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtGui -IC:\Qt\Qt5.9.0\5.9\Src\qtdeclarative\include\QtQml -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtNetwork -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\include\QtCore -I.moc\debug -IC:\Qt\Qt5.9.0\5.9\Src\qtbase\mkspecs\win32-msvc  -Fo.obj\debug\ @C:\Users\1\AppData\Local\Temp\nm9C2B.tmp”太长
Stop.
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\nmake.exe"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “cd”: 返回代码“0x2”
Stop.

在线fsu0413

只看该作者 1楼 发表于: 2020-03-07
因为路径长度限制,不要把Qt放在非常深的路径下。
推荐的路径:D:\Qt\qt-everywhere-src-5.9.0\configure.bat 这样的
4条评分好评度+1贡献值+1金钱+5威望+1
草长莺飞 好评度 +1 - 2020-03-07
草长莺飞 贡献值 +1 - 2020-03-07
草长莺飞 威望 +1 - 2020-03-07
草长莺飞 金钱 +5 - 2020-03-07
离线草长莺飞

只看该作者 2楼 发表于: 2020-03-07
回 fsu0413 的帖子
fsu0413:
因为路径长度限制,不要把Qt放在非常深的路径下。
推荐的路径:D:\Qt\qt-everywhere-src-5.9.0\configure.bat 这样的

是指qt的安装路径吗,还是-prefix的指定路径,后者我刚才试了不行,报错一样的
configure.bat -mp -confirm-license -opensource -platform win32-msvc -debug-and-release -static -force-asserts -prefix F:\Qt-static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests

在线fsu0413

只看该作者 3楼 发表于: 2020-03-07
回 草长莺飞 的帖子
草长莺飞:是指qt的安装路径吗,还是-prefix的指定路径,后者我刚才试了不行,报错一样的
configure.bat -mp -confirm-license -opensource -platform win32-msvc -debug-and-release -static -force-asserts -prefix F:\Qt-static -static-runtime -silent -opengl desktop -qt-sqlite -qt .. (2020-03-07 12:33) 

只要涉及到路径的都要:
1. 尽量短,因为Windows的260字符限制
2. 不要有空格和非ascii码字符,因为可能被误认为参数之类的导致失败
快速回复
限100 字节
 
上一个 下一个