Qwt5.2.3 + VS2008/VS2010+Qt4.8.5编译
2014-04-15 22:40
267 查看
====================================================
1、下载 Qwt 源代码
说明:Qwt依赖于Qt库,特别注意Qt库的VS编译版本,
若Qt库为VS2008,建议Qwt使用VS2008编译配置,
若Qt库为VS2010,建议Qwt使用VS2010编译配置。
若同时安装了Qt VS2008和VS2010,建议编译时检查环境变量PATH
确保Qt的include和lib路径对应着正确的编译版本。
====================================================
2、定义环境变量
(1)定义 QTDIR 环境变量,表示Qt安装路径
set QTDIR=C:\Qt\4.8.5
(2)将qmake.exe所在路径添加到环境变量PATH
set PATH=C:\Qt\4.8.5\bin;%PATH%
(3)定义 QMAKESPEC 环境变量,表示平台和编译器组合方式,例如Win32平台+VS2008/VS2010编译器,则设置
set QMAKESPEC=win32-msvc2008 或
set QMAKESPEC=win32-msvc2010
(4)运行VS批处理命令,设置环境变量,对于Win32+VS2008/VS2010来说,运行命令
call "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86 或
call "C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
说明1:vcvarsall.bat针对不同平台设置环境变量,例如Wind32平台调用:call "%~dp0bin\vcvars32.bat"
说明2:vcvars32.bat内容仅一条命令"%VS90COMNTOOLS%vsvars32.bat" 或 "%VS100COMNTOOLS%vsvars32.bat"
说明3:环境变量VS90COMNTOOLS=C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\
环境变量VS100COMNTOOLS=C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools\
说明4:通过 qmake -query 命令可以列出 qmake 中全部变量,
通过 qmake -query VARIABLE 命令可以查询 qmake 中是否定义了VARIABLE变量
通过 qmake -set VARIABLE VALUE 命令可以在 qmake 中定义变量
说明5:通过 set 命令可以列出 Windows 中全部变量
通过 set VARIABLE 命令可以查询 Windows 中是否定义了VARIABLE变量
通过 set VARIABLE = VALUE 可以在Windows中定义变量
====================================================
3、生成Makefile文件或vcproj文件
(1)修改qmake工程文件(*.pro/*.pri),可以自定义debug或release编译,install输出路径等。
说明:pro文件包含编译应用程序需要哪些文件,使用哪些配置。
pri文件包含公共定义,可以被几个工程文件引用。
默认编译选项为:CONFIG += qt warn_on thread silent release
默认关闭选项为:#CONFIG += debug_and_release build_all
默认编译选项为:CONFIG += QwtDll QwtPlot QwtWidgets QwtDesigner
默认关闭选项为:#CONFIG += QwtSVGItem QwtMathML QwtExamples
(2)运行qmake qwt.pro命令,用于生成缺省Makefile文件
运行call admin\msvc-qmake.bat 用于生成所有Makefile文件
运行call admin\msvc-qmake.bat vc 用于生成所有VS2008/VS2010工程文件(*.vcproj/*.vcxproj)
====================================================
4、生成静态库(*.lib)或动态库(*.dll)文件
(1)运行nmake命令,编译生成库文件
(2)运行namke install命令,将头文件和库文件复制到指定目录
====================================================
编译错误:对于vs2010,链接qwt_designer_plugin.lib时会出现“无法解析的外部符号”错误。
分析原因:在qwt-5.2.3\designer\designer.pro文件中,缺少对vs2010的外部依赖库定义。
解决方法:使用文本编辑器打开designer.pro文件,找到win32-msvc2008:LIBS,添加win32-msvc2010:LIBS内容:
win32-msvc2008:LIBS += $${QWT_ROOT}/lib/$${LIBNAME}.lib
win32-msvc2010:LIBS += $${QWT_ROOT}/lib/$${LIBNAME}.lib
说明:在qwt-5.2.3\examples\examples.pri和\qwt-5.2.3\textengines\textengines.pri文件中
存在类似错误。
1、下载 Qwt 源代码
说明:Qwt依赖于Qt库,特别注意Qt库的VS编译版本,
若Qt库为VS2008,建议Qwt使用VS2008编译配置,
若Qt库为VS2010,建议Qwt使用VS2010编译配置。
若同时安装了Qt VS2008和VS2010,建议编译时检查环境变量PATH
确保Qt的include和lib路径对应着正确的编译版本。
====================================================
2、定义环境变量
(1)定义 QTDIR 环境变量,表示Qt安装路径
set QTDIR=C:\Qt\4.8.5
(2)将qmake.exe所在路径添加到环境变量PATH
set PATH=C:\Qt\4.8.5\bin;%PATH%
(3)定义 QMAKESPEC 环境变量,表示平台和编译器组合方式,例如Win32平台+VS2008/VS2010编译器,则设置
set QMAKESPEC=win32-msvc2008 或
set QMAKESPEC=win32-msvc2010
(4)运行VS批处理命令,设置环境变量,对于Win32+VS2008/VS2010来说,运行命令
call "C:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86 或
call "C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
说明1:vcvarsall.bat针对不同平台设置环境变量,例如Wind32平台调用:call "%~dp0bin\vcvars32.bat"
说明2:vcvars32.bat内容仅一条命令"%VS90COMNTOOLS%vsvars32.bat" 或 "%VS100COMNTOOLS%vsvars32.bat"
说明3:环境变量VS90COMNTOOLS=C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\
环境变量VS100COMNTOOLS=C:\Program Files\Microsoft Visual Studio 10.0\Common7\Tools\
说明4:通过 qmake -query 命令可以列出 qmake 中全部变量,
通过 qmake -query VARIABLE 命令可以查询 qmake 中是否定义了VARIABLE变量
通过 qmake -set VARIABLE VALUE 命令可以在 qmake 中定义变量
说明5:通过 set 命令可以列出 Windows 中全部变量
通过 set VARIABLE 命令可以查询 Windows 中是否定义了VARIABLE变量
通过 set VARIABLE = VALUE 可以在Windows中定义变量
====================================================
3、生成Makefile文件或vcproj文件
(1)修改qmake工程文件(*.pro/*.pri),可以自定义debug或release编译,install输出路径等。
说明:pro文件包含编译应用程序需要哪些文件,使用哪些配置。
pri文件包含公共定义,可以被几个工程文件引用。
默认编译选项为:CONFIG += qt warn_on thread silent release
默认关闭选项为:#CONFIG += debug_and_release build_all
默认编译选项为:CONFIG += QwtDll QwtPlot QwtWidgets QwtDesigner
默认关闭选项为:#CONFIG += QwtSVGItem QwtMathML QwtExamples
(2)运行qmake qwt.pro命令,用于生成缺省Makefile文件
运行call admin\msvc-qmake.bat 用于生成所有Makefile文件
运行call admin\msvc-qmake.bat vc 用于生成所有VS2008/VS2010工程文件(*.vcproj/*.vcxproj)
====================================================
4、生成静态库(*.lib)或动态库(*.dll)文件
(1)运行nmake命令,编译生成库文件
(2)运行namke install命令,将头文件和库文件复制到指定目录
====================================================
编译错误:对于vs2010,链接qwt_designer_plugin.lib时会出现“无法解析的外部符号”错误。
分析原因:在qwt-5.2.3\designer\designer.pro文件中,缺少对vs2010的外部依赖库定义。
解决方法:使用文本编辑器打开designer.pro文件,找到win32-msvc2008:LIBS,添加win32-msvc2010:LIBS内容:
win32-msvc2008:LIBS += $${QWT_ROOT}/lib/$${LIBNAME}.lib
win32-msvc2010:LIBS += $${QWT_ROOT}/lib/$${LIBNAME}.lib
说明:在qwt-5.2.3\examples\examples.pri和\qwt-5.2.3\textengines\textengines.pri文件中
存在类似错误。
相关文章推荐
- [Qt4]编译64位Qt 4.8.5并配置到VS2010中使用
- vs2010编译Qt5.0
- 【QT】2-[附加] Qt4.8.5 VS2010 QtCreater MinGW多种搭配方法,适合win系统下的所有情况
- Windows编译64位QT并使用VS2010开发
- win7环境下vs2010编译qt源码
- Qwt6.1.0源码编译--Qt4.8.5
- VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序
- QT WindowsVS2010平台自行编译SDK的必要性验证
- vs2010编译Qt工程,中文显示乱码
- VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序
- VS2010+QT4.8.5 +FastReport教程
- QT4.8.5+qt-vs-addin-1.1.11+VS2010安装配置和QT工程的新建和加载
- 在VS2010中集成QT + Qt4.8.2编译MYSQL驱动
- VS2010编译Qt4.7.2 静态库(测试成功)
- 编译Qt 4.8.5
- 亲测VS2010纯静态编译QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序(图文并茂,非常详细) good
- [mark]vs2012编译qt4.8.5
- vs2010编译qt4.8
- qt 4.8.5 vs 2012编译
- VS2010编译安装Qt4.8.2