目录
一、前言
本文主要简述了如何利用cmake将开源QHexView编译生成静态库,笔者默认读者已经下载并成功安装了cmake,且已经下载了QHexView源码。笔者为读者提供了cmake和QHexView下载链接如下
cmake下载官网
github QHexView源码
笔者做了qt5.6.3兼容处理的QHexView
笔者建议是用处理过的QHexView进行编译,否则跟读者编译结果跟笔者可能有些许差别
二、cmake编译
1.创建build文件夹
在QHexView中创建build文件夹,目的:为了保存cmake编译生成的文件
2.加载目录
- 加载QHexView源码目录(Browse Source)
- 加载编译生成文件夹目录(我们step1中创建的build目录,Browse Build)
- 配置(Configure)
- 选择生成工程,如:这边我选择编译生成Visual Studio 12 2013工程
- 选择生成平台,可选arm,win32,x64.如:这边我选择的是编译生成win32
- 保持默认,点击完成即可
3.加载Qt5_DIR
- 红色区域显示Qt5_DIR-NOTFIND
- 点击弹窗的ok
- 点击红色区域显示Qt5_DIR-NOTFIND,会出现三个点,点进去。然后找到D:\Qt\Qt5.6.3\5.6.3\msvc2013\lib\cmake\Qt5中Qt5这个文件夹,选择Qt5文件夹即可,此处的D盘可以是其他盘,请根据你安装Qt的路径去选择
4. 配置、生成
- 点击Configure
- 点击Generate
出现
Configuring done
Generating done
即可
5.查看build目录
此时我么可以看到build目录中,cmake已经生成了如图所示文件,我们可以用vs2013打开解决方案QHexView.sln
6.编译
生成>生成解决方案,如图所示,已经生成qhexview.lib文件在…\QHexView\build\Debug文件夹中
7.查看静态库文件
至此,静态库编译完成
三、使用说明
1.添加库
在工程文件上点击鼠标右键>添加库
2.外部库
选择外部库
3.加载库
3.1选择库文件
选择…\QHexView\build\Debug下的qhexview.lib文件
3.2 选择包含路径
- 选择包含路径:…\QHexView
- 选择windows
- 选择静态库
- 去掉红色方框中所有打勾选项
4.完成
5.qmake
构建下点击执行qmake
四、实例代码
1.头文件
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QDebug>
#include <QGridLayout>
#include <QPushButton>
#include "QHexView/qhexview.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
private:
Ui::MainWindow *ui;
QHexView *m_hexView;
};
#endif // MAINWINDOW_H
2.源文件
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_hexView = new QHexView(true,this);
setCentralWidget (m_hexView);
QByteArray data("123456");
m_hexView->setShowData (data);
}
MainWindow::~MainWindow()
{
delete ui;
}