Linux下HALCON的使用

1、Linux 下的 HALCON 安装

1.1 软件下载

        软件下载可通过 MVTec 官网或大恒图像官网下载。
        MVTec 官网: www.mvtec.com
        大恒图像官网: www.daheng-imaging.com

1.2 软件安装

        以下是以 HALCON 24.11 Progress 版为例,其他版本安装过程类似。详细安装过程可参考 HALCON 英文安装向导。
1、下载对应软件
2、双击
3、到网页安装,安装完之后,购买或使用试用license
4、设置环境变量
        在 Linux 系统下安装完 HALCON ,是没有设置环境变量的,需要自己手动设置。 HALCON 环境变量如 下,可以选择设置到.profile 中,也可选择设置到 .bashrc 中,设置过程中,注意 HALCONARCH 的参数。
# Sample shell script for HALCON environment settings
# (sh syntax)
# If you are using the Bourne shell source this file with the following
# command:
# source .profile_halcon
HALCONARCH=x64-linux; export HALCONARCH
HALCONROOT="/opt/halcon"; export HALCONROOT
HALCONEXAMPLES=${HALCONROOT}/examples; export HALCONEXAMPLES
HALCONIMAGES=${HALCONROOT}/examples/images; export HALCONIMAGES
PATH=${HALCONROOT}/bin/${HALCONARCH}:${PATH}; export PATH
if [ ${LD_LIBRARY_PATH} ] ; then
LD_LIBRARY_PATH=${HALCONROOT}/lib/${HALCONARCH}:${LD_LIBRARY_PATH}; export LD_LIBRARY_PATH
else
LD_LIBRARY_PATH=${HALCONROOT}/lib/${HALCONARCH}; export LD_LIBRARY_PATH
fi
        可在用户目录(cd ~ )下,通过如下命令打开 .profile .bashrc
sudo gedit .profile
        或
sudo gedit .bashrc

        设置完成后,需执行

source .profile
        或
source .bashrc
        然后重启终端,通过命令查看环境变量设置是否正确。
        PS:如果 HALCON 环境变量设置到 .profile ,执行 echo $LD_LIBRARY_PATH ,无法获取结果,可 考虑把环境变量设置到.bashrc 中。

2、Linux 下交叉编译环境搭建

2.1 交叉编译概述

2.1.1 什么是交叉编译

1 、本地编译
        解释什么是交叉编译之前,先要明白一个概念:本地编译 。我们之前常见的软件开发,都是属于本地编 译:在当前的 PC 下, x86 CPU 下,直接编译出来程序,可以运行的程序(或者库文件),其可以直接在 当前的环境,即 x86 CPU 下,当前电脑中运行。 此时的编译,可以叫做,本地编译 即在当前目标平台下,编译出来的程序,也只是放到当前平台下, 就可以运行的。
2 、交叉编译
        交叉编译,是一个和本地编译,相对应的概念。而所谓的交叉编译,就是:在一种平台上编译,编译出 来的程序,是放到别的平台上运行即编译的环境,和运行的环境不一样,属于交叉的,此所谓 cross 。 交叉编译,这个概念,主要和嵌入式开发有关。交叉编译,英文常写作 cross compile ,也有其他写法: crosscompile, cross compiling 等。 之所以要有交叉编译,主要原因是: 嵌入式系统中的资源太少。具体的解释就是:交叉编译出来的程序, 所要运行的目标环境中,各种资源,都相对有限,所以很难进行直接的本地编译。 最常见的情况是:在进行嵌入式开发时,目标平台,即嵌入式开发板,比如是最大主频 200MHz ARM 的 CPU ,加上 32M RAM ,加上 1G Nand Flash 等等。在如此相对比较紧张的硬件资源的前提下,在 已经运行了嵌入式 Linux 的前提下,是无法很方便的直接在嵌入式 Linux 下,去本地编译,去在 ARM 的 CPU 下,编译出来,供 ARM CPU 可以运行的程序的。因为编译,开发,都需要相对比较多的 CPU , 内存,硬盘等资源,而嵌入式开发上的那点资源,只够嵌入式(Linux )系统运行的,没太多剩余的资源, 供你本地编译。

2.1.2 什么是交叉编译工具链

        在编译软件的时候,会用到(链接)一些平台相关的类库,如果是在本地运行的话,一般不用作特殊处 理,但由于嵌入式软件的运行平台不是本地,所以要做一些特殊处理,让编译环境依赖的类库脱离本地依 赖,使用嵌入式平台的类库来进行链接,处理这一过程就叫作交叉编译工具链。
        交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi]
arch - 体系架构,如 ARM MIPS
vendor - 工具链提供商
os - 目标操作系统
eabi - 嵌入式应用二进制接口( Embedded Application Binary Interface

2.2  交叉编译工具链安装

2.2.1 在线方式

        在 armv7a-linux 下的安装方式:
apt-get install gcc-arm-linux-gnueabihf
apt-get install g++-arm-linux-gnueabihf
        在 aarch64-linux 下的安装方式:
apt-get install gcc-aarch64-linux-gnu
apt-get install g++-aarch64-linux-gnu

        此处以 RK3399 为例说明,RK3399 aarch64 架构,所以需执行以下两条命令。

apt-get install gcc-aarch64-linux-gnu
apt-get install g++-aarch64-linux-gnu

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

        安装完成后,可通过以下命令查看是否安装成功。

aarch64-linux-gnu-gcc -v

        若出现如下图所示情况,则证明安装成功了。

2.2.2 离线方式

        此处以 RK3399 为例说明, RK3399 aarch64 架构,所以需下载支持 aarch64-linux 的交叉编译工 具,下载地址: https://www.linaro.org/downloads/ 注意:因个别 ARM 厂家可能会提供定制版交叉编译工 具,所以建议提前联系厂家,让 ARM 厂家推荐交叉编译工具。
        接下来将下载到的交叉编译工具包 gcc-linaro-7.4.1-2019.02-i686_aarch64-linux-gnu.tar.xz ,通过命令 解压。

        将解压后的文件复制到想要安装的目录,我这里选择根目录下 opt 文件夹,即 /opt

将复制后的文件夹重命名为 gcc-aarch64-linux-gnu。

        然后将/opt/gcc-aarch64-linux-gnu/bin 目录添加到环境变量中。输入命令:
sudo gedit /etc/profile
        注意:此处可根据实际情况选择相应的编辑工具。
        在末尾添加如下内容:
export PATH="/opt/gcc-aarch64-linux-gnu/bin:$PATH"

        接着运行命令是环境变量生效。

source /etc/profile

        通过指令查看是否安装成功。

aarch54-linux-gnu-gcc -v

        注意:如果查看过程中遇到以下问题

        可通过如下命令解决。
sudo apt-get install lib32ncurses5 lib32z1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

F-Halcon

浏览即鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值