Qt+Halcon笔记(1)—— 环境配置(两种方案,博主亲测)

配置方案1:配置简单,但移植后的机器需要安装Halcon

注意:配置时建议使用环境变量来代替路径,并考虑平台移植问题

在这里插入图片描述

#includes
INCLUDEPATH += "$$(HALCONROOT)/include"
INCLUDEPATH += "$$(HALCONROOT)/include/cpp"

#libs
QMAKE_LIBDIR     += "$$(HALCONROOT)/lib/$$(HALCONARCH)"
unix:LIBS   += -lhalconcpp -lhalcon -ldl -lpthread
win32:LIBS  += halconcpp.lib halcon.lib

官方推荐:

# MacOS specific settings. Note that while dyld will search under
# /Library/Frameworks by default, the preprocessor/compiler/linker will not
# and need to be told explicitly.
macx {
  QMAKE_CXXFLAGS += -F/Library/Frameworks
  QMAKE_LFLAGS   += -F/Library/Frameworks
  LIBS           += -framework HALCONCpp
}
else {
  #defines
  win32:DEFINES += WIN32

  #includes
  INCLUDEPATH   += "$$(HALCONROOT)/include"
  INCLUDEPATH   += "$$(HALCONROOT)/include/halconcpp"

  #libs
  QMAKE_LIBDIR  += "$$(HALCONROOT)/lib/$$(HALCONARCH)"
  unix:LIBS     += -lhalconcpp -lhalcon -lXext -lX11 -ldl -lpthread
  win32:LIBS    += "$$(HALCONROOT)/lib/$$(HALCONARCH)/halconcpp.lib" \
                   "$$(HALCONROOT)/lib/$$(HALCONARCH)/halcon.lib"
}

官方Qt+Halcon例程位置:
C:\Users\Public\Documents\MVTec\HALCON-18.11-Steady\examples\cpp\qt\Matching

配置方案2:第三方库的使用,将用到的头文件和库直接打包到项目中,不用在客户机安装Halcon
  1. 项目目录下新建includelib文件夹
  2. D:\Program Files\MVTec\HALCON-18.11-Steady\include下所有内容复制到新建的include
  3. D:\Program Files\MVTec\HALCON-18.11-Steady\lib\x64-win64下的所有内容复制到新建的lib
  4. D:\Program Files\MVTec\HALCON-18.11-Steady\bin\x64-win64中找到与lib文件下*.lib文件重名的*.dll文件,并复制到新建的lib文件下

在这里插入图片描述
5. 将配置信息添加到*.pro文件中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意:要去掉为debug版本添加'd'作为后缀选项,否则编译时会找不到库文件

以博主测试项目为例:
在这里插入图片描述
├─include
│ └─halcon18_x64
│ ├─*.h
│ ├─com
│ ├─halconc
│ ├─halconcpp
│ │ └─*.h
│ ├─hdevengine
│ └─hlib
└─lib
└─halcon18_x64
├─*.dll
└─*.lib

配置结果如下:

INCLUDEPATH += $$PWD/include/halcon18_x64
INCLUDEPATH += $$PWD/include/halcon18_x64/halconcpp

win32: LIBS += -L$$PWD/lib/halcon18_x64/ -lhalcon

INCLUDEPATH += $$PWD/lib/halcon18_x64
DEPENDPATH += $$PWD/lib/halcon18_x64

win32: LIBS += -L$$PWD/lib/halcon18_x64/ -lhalconcpp

INCLUDEPATH += $$PWD/lib/halcon18_x64
DEPENDPATH += $$PWD/lib/halcon18_x64

此处,PWD指的是项目所在路径

包含Halcon头文件

官方自带例程中,建议使用如下语句包含头文件:

#ifndef __APPLE__
#  include "HalconCpp.h"
#else
#  ifndef HC_LARGE_IMAGES
#    include <HALCONCpp/HalconCpp.h>
#  else
#    include <HALCONCppxl/HalconCpp.h>
#  endif
#endif
说明
  1. 使用MinGW编译会报错,使用MSVC则不会
  2. 两种方案需要根据实际情况选择
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值