[亲测可用] Halcon联合Qt Creator环境配置方法

之前一直用VS+Qt+Halcon,但是不可避免的接触到Qt Creator+Halcon的,因为很多人给你的就是pro文件呀(不是解决方案sln).但是怎么配置呢,这里推荐的最直接的方法就是打开Halcon自带的案例文件,目录一般在C:\Users\Public\Documents\MVTec\HALCON-18.05-Progress\examples\cpp(版本不同,目录稍微有所差别,我是halcon18版本,注意区分)
里面有个qt文件夹,点进去进入项目,Qt打开.pro文件,首先看自己能不能直接构建运行,如果可以就说明你环境配置没问题,如果构建出错,你就要打开这个文件夹里面的readme文件,里面有告诉你怎么配置,但是一般都没问题。
废话少说,就是把案例程序.pro文件中的部分内容拷贝到你自己项目的.pro文件就可以了

//为跨平台做准备
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"
}

复制完以后,记得在头文件和源文件中加上如下代码
官方推荐是

//头文件

#ifndef __APPLE__
#  include "HalconCpp.h"
#else
#  ifndef HC_LARGE_IMAGES
#    include 
#  else
#    include 
#  endif
#endif

/*加在cpp文件,如果不加,每次都要在使用的方法和属性名前面加HalconCpp,
比如 HalconCpp::ReadImage,比较烦人*/
using namespace HalconCpp;

也可直接这样,简单易记,但是有时候可能不稳定

//加在头文件
#include "HalconCpp.h"
//加在cpp文件
using namespace HalconCpp;

文中部分参考https://blog.csdn.net/y363703390/article/details/81539814
完。

你可能感兴趣的:(Halcon/Qt)