当前位置: 首页 > news >正文

哈尔滨网站优化排名哈尔滨优化网站方法

哈尔滨网站优化排名,哈尔滨优化网站方法,网站分页代码,wordpress删除站点SDK 10.0.22000.194 有 2种编译方式 #xff0c;第二种 看下面 方式一: 1、问题描述#xff1a; 使用VS编译程序时#xff0c;运行库选择多线程#xff08;/MT#xff09;#xff0c;表示采用多线程静态release的方式进行编译。 但是#xff0c;发现编译是不能通过的…SDK 10.0.22000.194 有 2种编译方式 第二种 看下面 方式一: 1、问题描述 使用VS编译程序时运行库选择多线程/MT表示采用多线程静态release的方式进行编译。 但是发现编译是不能通过的。 qtmain.lib(qtmain_win.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MD_DynamicRelease”不匹配值“MT_StaticRelease” 原因在于安装Qt时默认使用的是动态库而且官方并没有提供编译好的静态库下载。 但我们可以自己下载Qt源码下来自己重新编译生成静态库这样我们开发的Qt程序也就能完成静态的编译了。以后也就只需要编译成一个exe 2、下载源码包 首先我们需要从Qt官网地址http://download.qt.io/archive/qt/5.11/5.11.2/single/ 下载对应的Qt源码。在这里我以在Windows下编译Qt程序为例。 3、编译环境 以下是编译时需要的工具在编译之前请务必安装! 安装都比较简单。这里直接给出官网下载的链接。最后记得添加到环境变量安装时把‘’添加到PATH环境“选项勾起就可以了或者在安装后手动添加也可以。 Ruby version 1.9.3 or laterPerl version 5.12 or laterPython version 2.7.5 or laterJOM 建议安装jom来替换nmake进行编译可以充分利用CPU多核的能力否则估计你会中途吐血的。 jom是nmake的多线程版nmake不支持多线程单线程编译速度太慢了。 4、编译源码库 以上东西都准备好以后接下来我们可以开始编译源码了。 在编译之前记得先将所有的杀毒软件关掉避免误杀。 然后进入解压后的Qt源码文件夹下的qtbase/mkspecs下找到win32-msvc文件夹。 另外顺便说下如果是想编译较早些时候的Qt源码源码下载下来后会发现里面没有这个文件夹。而是这样的 这时候只需要根据你安装的Qt版本进行选择就可以了。 进入选中的文件夹之后找到qmake.conf文件并使用文本编辑器打开。 我们再根据它include的内容定位到相应的文件。 include(../common/msvc-desktop.conf)找到相应的文件后修改其内容。在这里也就是msvc-desktop.conf这个文件。 找到以下标志。将原来的 QMAKE_CFLAGS_RELEASE $$QMAKE_CFLAGS_OPTIMIZE -MD QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO $$QMAKE_CFLAGS_OPTIMIZE -Zi -MD QMAKE_CFLAGS_DEBUG -Zi -MDd 修改成 QMAKE_CFLAGS_RELEASE $$QMAKE_CFLAGS_OPTIMIZE -MT QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT QMAKE_CFLAGS_DEBUG -Zi -MTd 即将MD改成MTMDd改成MTd动态改成静态 在开始菜单中找到“适用于 VS 2017 的 x64 本机工具命令提示“ 或者 “x64 Native Tools Command Prompt for VS 2017”。 将当前目录切换到源码解压后的目录下。比如我的是在E盘下的qt-everywhere-src-5.11.2这个文件夹。 接下来将执行关键的几个命令。首先执行configure命令。复制并执行以下命令 configure.bat -mp -confirm-license -opensource -platform win32-msvc -debug-and-release -static -force-asserts -prefix E:\Qt5.11.2\Qt-msvc2017-x64-static -static-runtime -silent -opengl desktop -qt-sqlite -qt-pcre -qt-zlib -qt-freetype -qt-harfbuzz -qt-libpng -qt-libjpeg -nomake examples -nomake tests 命令解释含义 该命令是在Windows平台上用于编译和配置Qt源代码的批处理文件。让我们逐步解析命令的各个选项和参数configure.bat: 这是Qt源代码配置文件的名称。 -mp: 这个选项用于启用多处理器编译以提高编译速度。 -confirm-license: 这个选项用于确认接受Qt的许可协议。 -opensource: 这个选项用于指定使用开源版本的Qt。 -platform win32-msvc: 这个选项用于指定目标平台为Windows并使用Microsoft Visual C编译器。 -debug-and-release: 这个选项用于同时构建调试和发布版本的Qt库。 -static: 这个选项用于生成静态链接库以便其他应用程序可以将其静态链接到自己的代码中。 -force-asserts: 这个选项用于强制进行断言检查可以在编译时捕获潜在的错误。 -prefix E:\Qt5.11.2\Qt-msvc2017-x64-static: 这个选项用于指定生成的Qt库文件的安装目录。 -static-runtime: 这个选项用于在静态链接库中包含运行时组件以便其他应用程序可以独立运行而无需安装Visual C运行时库。 -silent: 这个选项用于静默安装即在安装过程中不显示任何图形界面。 -opengl desktop: 这个选项用于启用OpenGL支持并针对桌面版进行优化。 -qt-sqlite: 这个选项用于启用SQLite数据库支持。 -qt-pcre: 这个选项用于启用Perl兼容的正则表达式库支持。 -qt-zlib: 这个选项用于启用zlib压缩库支持。 -qt-freetype: 这个选项用于启用FreeType字体渲染库支持。 -qt-harfbuzz: 这个选项用于启用HarfBuzz文本渲染库支持。 -qt-libpng: 这个选项用于启用libpng图像库支持。 -qt-libjpeg: 这个选项用于启用libjpeg图像库支持。 -nomake examples: 这个选项用于禁用构建示例应用程序。 -nomake tests: 这个选项用于禁用构建测试应用程序。总结起来该命令用于配置和编译Qt源代码生成静态链接库和其他功能并将其安装在指定的目录中。 · 其中 -platform win32-msvc 在前面也有提到过的根据我们安装Qt的版本选择即可 · -static 表示编译静态库 · E:\Qt5.11.2\Qt-msvc2017-x64-static 是编译完后的安装目录此目录不需要事先创建建议路径不要太长。 这个过程不需要很久执行完结果如图 执行jom命令之前需要到环境变量 path 里面把jom的文件目录配置进去 执行完configure之后输入编译命令 jom /J 4 只输入jom也可以这样会使用所有CPU核心加上/J参数可以使用指定线程数编译例如上述命令使用4线程编译。 若没有jom就是用微软自带编译命令nmake不过nmake不能多线程编译速度会很慢 nmake 编译完成之后就可以安装了。 如果你是用的jom进行的编译使用下列命令安装 2.jom install 如果是nmake 2.nmake install 如果没有意外那么我们就会在之前设定好的路径下看到编译好的文件。 至此整个Qt源码编译过程也就结束了过程说简单也简单但我却搞了两三天就因为前面环境没搭好 但别高兴得太早这还没结束呢。。我们必须得建立一个测试程序运行起来才算成功 4、安装和配置 VS2017中Qt插件安装教程 点击菜单栏上的“Qt VS Tools Qt Options”打开Qt选项窗口 然后将我们编译好的Qt版本E:\Qt5.11.2\Qt-msvc2017-x64-static添加进来。 我们创建一个Qt应用程序进行测试。 整理遇到的问题。 使用Release方式编译编译不通过 错误一 错误一 Qt5Core.lib(qobject.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MD_DynamicRelease”(main.obj 中) 原因及解决方法 因为我们编译的Qt5.11.2的VC运行库是MT和MTd工程向导创建的缺省是MD和MDd。也就是我们需要把运行库对应的值改了。 错误二 LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突请使用 /NODEFAULTLIB:library 原因及解决方法 在同一个项目中所有的源文件必须链接相同的VC运行时库。如果某一文件用了MTd版本而其他文件用MT版本的库也就是说用了不同的库就会导致这个警告的出现。 添加一下命令行可解决 /NODEFAULTLIB:“libcmt.lib” 错误三 Qt5Core.lib(qglobal.obj) : error LNK2019: 无法解析的外部符号 gethostname该符号在函数 “public: static class QString __cdecl QSysInfo::machineHostName(void)” (?machineHostNameQSysInfoSA?AVQStringXZ) 中被引用 Qt5Core.lib(qglobal.obj) : error LNK2019: 无法解析的外部符号 WSAStartup该符号在函数 “public: __cdecl QWindowsSockInit::QWindowsSockInit(void)” (??0QWindowsSockInitQEAAXZ) 中被引用 Qt5Core.lib(qglobal.obj) : error LNK2019: 无法解析的外部符号 WSACleanup该符号在函数 “public: __cdecl QWindowsSockInit::~QWindowsSockInit(void)” (??1QWindowsSockInitQEAAXZ) 中被引用 原因及解决方法 显然这是因为有些依赖库我们没添加好~ 附加库目录改成Undefined control sequence \lib(QTDIR)\plugins\imageformats; 附加依赖项改成qtmain.lib;qwindows.lib;Qt5Widgets.lib;Qt5Core.lib;Qt5Gui.lib;Qt5PlatformCompositorSupport.lib;Qt5EventDispatcherSupport.lib;Qt5FontDatabaseSupport.lib;Qt5ThemeSupport.lib;Qt5WindowsUIAutomationSupport.lib;qgif.lib;qicns.lib;qico.lib;qjpeg.lib;qsvg.lib;qtga.lib;qtiff.lib;qwbmp.lib;qwebp.lib;qtfreetype.lib;qtharfbuzz.lib;qtlibpng.lib;qtopenwnn.lib;qtpcre2.lib;qttcime.lib;winspool.lib;shlwapi.lib;rpcrt4.lib;comdlg32.lib;oleaut32.lib;imm32.lib;winmm.lib;glu32.lib;opengl32.lib;gdi32.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;ole32.lib;advapi32.lib;ws2_32.lib;mpr.lib;%(AdditionalDependencies) 在main.cpp文件中加入代码 #pragma comment(lib, version.lib)#pragma comment(lib, Netapi32.lib)#pragma comment(lib, userenv.lib)#pragma comment(lib, msvcrtd.lib)#pragma comment(lib, Dwmapi.lib) 错误四 qt.qpa.plugin: Could not find the Qt platform plugin “windows” in “” This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. 原因及解决方法 插件无法加载加载plugin的办法 使用宏 Q_IMPORT_PLUGIN在main.cpp中增加代码如下 #include QtCore/QtPluginQ_IMPORT_PLUGIN(QWindowsIntegrationPlugin) 继续执行发现可以了~ 成功了 方式二: 用VS2017编译Qt 5.15.x静态库 一些莫名其妙的原因要升级到Qt5耗时几天总结如下 第1步下载源码包qtbase-everywhere-opensource-src-5.15.x.zip 第2步安装下面程序strawberry-perl-5.x.x; python-3.x.x; rubyinstaller-devkit-3.23.x.x 第3步解压源码包到目录如:\src-5.15\qtbase\修改\mkspecs\common\msvc-desktop.conf QMAKE_CFLAGS_RELEASE $$QMAKE_CFLAGS_OPTIMIZE -MT QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT QMAKE_CFLAGS_DEBUG -Zi -MTd  第4步打开x86 Native Tools Command Prompt for VS2017进入源码目录执行: configure -prefix E:\Qt5.11.2\Qt-msvc2017-x64-static -static -release -opensource -confirm-license -nomake tests -nomake examples 第4步执行nmake开始编译 。。。 第5步执行nmake install开始安装。。。 说明: 1. 建议使用VS2017或之前版本编译否则配置时Qt 5.15.x可能无法识别 2. Qt5开始源码树被划分多个子模块可以单独编译完整的源码包约有900多Mb 3. 安装perl,ruby后确保环境变量被设置命令行执行:  perl -version ruby --version 4. 编译64位运行x64 Native Tools Command Prompt其它步聚相同 5. configure加上: -prefix 指定安装目录默认是:C:\Qt\Qt-5.15.x此目录不可更改除非重新编译。Qt-VSAddin 打开工程时需要查找QT_INSTALL_PREFIX宏。 6. config_help.txt包含完成的配置选项config.summary文件中包含配置后选项修改配置后configure加上-recheck-all 7. 重新编译前先执行nmake clean 遇到的问题: 1. 编译dbus出错configure加上: -no-dbus 不编译Qt D-Bus模块还是报错qdbusxml2cpp.cpp(83): error找到include/qt5/QtCore/qconfig.h增加如下内容 #if defined(QT_NO_DBUS) defined(QT_DBUS) # undef QT_NO_DBUS #elif !defined(QT_NO_DBUS) !defined(QT_DBUS) # define QT_NO_DBUS #endif 2. 报错缺少flex安装WinFlexBison修改win_flex.exe文件名为flex.exe设置环境set path%PATH%;d:\WinFlexBison 3. 报错缺少llvm-cofig安装LLVM(注意需对应Qt编译位数)发现没有llvm-config下载llvm源码包单独编译tools其中的llvm-config放到LLVM/bin 编译子模块qttools: 第1步下载源码包qttools-everywhere-src-5.15.x.zip 第2步解压源码包到目录如:\src-5.15\qttools 第3步安装LLVM, 添加环境变量LLVM_INSTALL_DIR到安装目录set LLVM_INSTALL_DIRd:\LLVM 第4步设置qmake到环境变量进入qttools子目录执行: qmake nmake nmake install
http://www.dnsts.com.cn/news/164154.html

相关文章:

  • 国外做二手服装网站有哪些问题自己如何免费制作一个网站
  • 怎么制作一个网站教程360免费建站李梦
  • 域名站长工具秦皇岛营销式网站
  • 电脑网站设计页面网站建设中轩网怎么样
  • 与网站建立的链接不安全怎么办网站设计素材图片
  • 南昌网站建设和推广app下载注册推广平台
  • 做搜狗pc网站优化网站要交钱吗
  • 做网站月收入郑州高端网站定制
  • 建网站 xyz贵州茅台酒股份有限公司网站
  • 网站开发主要框架 后端福州免费项目建设管理系统
  • 湖州网站建设有哪些深圳网站建设网站制作网站推广
  • 弄网站赚钱吗网站工信部备案流程
  • 网站建设 前沿文章淄博网站建设相关文章
  • 织梦cms wordpress百度优化师
  • 上海seo整站优化有没有代做课程设计的网站
  • 西安网站搭建免费下载app软件安装
  • 衡水做网站开发的惠城网站建设服务
  • 住房和城乡建设部网站电话网站报价模板
  • 怎样选择网站建设广州市中智软件开发有限公司
  • 橱柜企业网站模板响应式模板网站模板下载
  • 网站建设 微盘宁波企业自助建站系统
  • html5黑色网站网站建设技巧亅金手指排名27
  • 12306网站建设投标书免费关键词排名优化
  • 虚拟机做网站有用吗网站建设合作合同模板
  • 自己搭建环境建设网站中科 网站会员注册系统建设
  • 怎么在网站空间上传文件网站建设推广新闻
  • 太原网站建设费用抚顺市+网站建设
  • 一个网站做app如何注册公司抖音号
  • 临沧市建设局网站个人网站设计构思
  • 移动网站设计网站一个一个关键词做