QWT编译与配置-Windows/Linux环境
QWT和FFTW两种开源组件是常用的工程软件支持组件,QWT可以提供丰富的绘图组件功能,FFTW是优秀数字波形分析软件。本文使用基于LGPL版权协议的开源项目QWT的源代码和FFTW在Window 64bit/Linux环境下的Qt上进行编译,编译器使用MinGW-64bit版本。最终配置生成QWT的静态库文件和将qwt ui组件集成到QtCreator的Designer中。
QWT的源代码下载地址目录:https://sourceforge.net/projects/qwt/files/qwt/
请下载zip版本的源代码(我这里下载的是qwt-6.1.4.zip文件)
1 Windows环境
本文使用Window环境为:
系统: Windows 10 64bits
QtCreator版本: Qt5.12.1 / MinGW 64版本
a)解压qwt-6.1.4.zip文件到本地路径
解压qwt-6.1.4文件会发现该文件是一个基于Qt的工程文件,使用本地的QtCreator自帶的qt 命令行工具,分别编译release版本。
b) 切换到解压路径
C) 进行编译
c.1 更改配置文件
win32 {
QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION
# QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-qt-$$QT_VERSION
}
qmake qwt.pro
mingw32-make -j8
mingw32-make install
d) 配置QWT工作(关闭QtCreator)
拷贝工作:
d.1) 从 C:\Qwt-6.1.4\lib下拷贝libqwt.a和libqwtd.a 到 【qt安装路径\Qt5.12.1\5.12.1\mingw73_64\lib】文件夹下 。
d.2) 从 C:\Qwt-6.1.4\lib下拷贝qwt.dll和qwtd.dll 到 【qt安装路径\Qt5.12.1\5.12.1\mingw73_64\bin】文件夹下
d.3) 从 C:\Qwt-6.1.4\plugins\designer下拷贝qwt_designer_plugin.dll 到 【qt安装路径\Qt5.12.1\5.12.1\mingw73_64\plugins\designer】文件夹下 。
d.4) 在 【qt安装路径\Qt5.12.1\5.12.1\mingw73_64\include】文件夹下新建Qwt文件夹,并将C:\Qwt-6.1.4\include此文件夹下所有内容拷贝到刚才新建的Qwt文件夹内。
over#
2 Linux環境
本文使用的Linux環境爲:
系統: Manjaro KDE 64 bit版本gcc version 8.2.1 20181127 (GCC)
Qt版本: Qt5.12.1
a) qwt的編譯
a) 使用unzip命令解压qwt-6.1.4文件会发现该文件是一个基于Qt的工程文件,使用Linux的終端命令對QWT進行編譯。
b) 切換到安裝目錄,檢查qwtconfig.pri文件,查看最終make install 路徑是否是你想要設定的路徑,我這裏使用默認的路徑。
c) qmake qwt.pro
d) make -j8
e) sudo make install
如果路徑是root下的,則需要使用sudo。
最終qwt會在/usr/local/qwt-6.1.4創建所有的開發用的文件。
b) qwt的配置
b.1) sudo cp /usr/local/qwt-6.1.4/lib/* qt安裝路徑/Qt5.12.1/5.12.1/gcc_64/lib
b.2) 在qt安裝路徑/Qt5.12.1/5.12.1/gcc_64/include 創建Qwt文件夾mkdir Qwt
sudo cp /usr/local/qwt-6.1.4/include/* qt安裝路徑/Qt5.12.1/5.12.1/gcc_64/include/Qwt
b.3) sudo cp /usr/local/qwt-6.1.4/plugins/designer/libqwt_designer_plugin.so qt安裝路徑/Qt5.12.1/5.12.1/gcc_64/plugins/designer/
完成designer的組件支持。
c) 配置環境變量
sudo vim /etc/profile
在尾部追加:
export LD_LIBRARY_PATH=/usr/local/qwt-6.1.4/lib:$LD_LIBRARY_PATH
export CPLUS_INCLUDE_PATH=/usr/local/qwt-6.1.4/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=/usr/local/qwt-6.1.4/include:$C_INCLUDE_PATH
over#