Qt-导入第三方库

Qt提供了显式和隐式导入第三方库方法,本文首推介绍显示导入方法。

  1,第三方提供的库文件包括ControlCAN.h,ControlCAN.dll和ControlCAN.lib。将ControlCAN.h和ControlCAN.lib放入当前工程目录(其他任何位置均可),ControlCAN.dll文件放在debug和release文件夹中。

  打开.pro文件,右键,选择“添加库”:

Qt-导入第三方库

在弹出的对话框中选择“”“外部库”

Qt-导入第三方库

添加ControlCAN.lib

Qt-导入第三方库

Qt-导入第三方库

可以在.pro文件中看到上述图中的代码。

 

包含头文件“”ControlCAN.h“”,可以调用库中的API函数,如下代码:

 1 void MainWindow::on_openCanBtn_clicked()
 2 {
 3     if(VCI_OpenDevice(21,0,0)!=STATUS_OK)
 4         {
 5            qDebug("open Error");
 6             return;
 7         }
 8        int baud = 393223;
 9     if (VCI_SetReference(21,0, 0, 0, &baud) != STATUS_OK)
10         {
11           qDebug("set reference error");
12             VCI_CloseDevice(21,0);
13             return;
14         }
15 
16     VCI_INIT_CONFIG init_config;
17         init_config.Mode = 0;
18 
19         if(VCI_InitCAN(21,0,0,&init_config)!=STATUS_OK)
20         {
21            qDebug("Init Error");
22             VCI_CloseDevice(21,0);
23             return;
24         }
25 
26         ui->startCanBtn->setEnabled(true);
27 }

 

上述API调用比使用QLibrary的代码更少更方便


2,Qt添加外部库文件,


一种就是直接加库文件的绝对路劲,这种方法简单,但是遇到多个库文件的时候,会很麻烦,而且,如果工程移动位置以后还需要重新配置


另一种就是相对路径了,不过Qt 编译的文件会在一个单独的文件件里面,这里要和vs所好区分



我现在鼓捣出四种种方式来加载库文件


[cpp] view plain copy
  1. <pre name="code" class="cpp">LIBS += D:\Code\Opengltest\OpenGL32.Lib D:\Code\Opengltest\GlU32.Lib  
  2.   
  3. LIBS += OpenGL32.Lib GlU32.Lib  
  4.   
  5. LIBS += -L D:\Code\Opengltest\ -lOpenGL32 -lGlU32  
  6.   
  7. LIBS += -L ./ -lOpenGL32 -lGlU32  



第一种就是直接加据对路径


第二种就是直接加库文件,这个的前提是你的库文件必须在工程目录下


第三种就是 多个库在同一个文件夹下的时候,连接使用


第四种 就是相对路径。