OCCT ARM版本编译及安装

这篇具有很好参考价值的文章主要介绍了OCCT ARM版本编译及安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

OCCT提供源码,本文的编译直接在ARM板上进行编译。
注: 当前本文是基于glx跑起来的,应该是基于CPU, GPU的话后续探索更新文章来源地址https://www.toymoban.com/news/detail-756523.html

源码编译

  • 下载地址
    https://dev.opencascade.org/release
    
  • 下载依赖
    • 下载必须依赖 FreeType 和 Tcl/Tk
    https://dev.opencascade.org/resources/download/3rd-party-components
    
  • 安装所需要的依赖
    • 解决 fontconfig/fontconfig.h: No such file or directory
      sudo apt-get install libfontconfig1-dev
      
    • 解决 fatal error: GL/glx.h: No such file or directory
      sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev
      
  • 解压
    将opencascade进行解压, 新建3rdparty 将 FreeType 和 Tcl/Tk解压到3rdparty下【后续编译脚本这样写的,如果有其他要求可自行修改】
  • 编译
    #/bin/bash
    CURRENT_DIR=$(cd $(dirname $0); pwd)
    DEPEND_3RDPARTY_DIR=${CURRENT_DIR}/3rdparty
    # build 3rdparty
    if [ ! -x "build_arm" ];then
    	mkdir build_arm
    fi
    # input 3rdparty
    pushd ${DEPEND_3RDPARTY_DIR}
    
    FREETYPE_DIR=${DEPEND_3RDPARTY_DIR}/freetype-2.10.4
    TCL_DIR=${DEPEND_3RDPARTY_DIR}/tcl8.5.0
    TK_DIR=${DEPEND_3RDPARTY_DIR}/tk8.5.0
    
    INSTALL_3RDPARTY_DIR=${DEPEND_3RDPARTY_DIR}/install
    
    #: << FREETYPEBUILD
    pushd ${FREETYPE_DIR}
    if [ ! -x "build" ];then
    	mkdir build
    fi
    
    pushd build
    	rm -irf *
    	cmake 	-DCMAKE_INSTALL_PREFIX=${INSTALL_3RDPARTY_DIR}	\
    			..  \
    	&& make -j4 && make install
    popd
    rm -irf build
    popd
    
    #FREETYPEBUILD
    #: << TCLBUILD
    # build tcl
    pushd  ${TCL_DIR}/unix
    	# 为了解决编译错误
    	# fixstrtod.c:(.text+0x0): multiple definition of fixstrtod
    	export tcl_cv_strtod_buggy=1
    	export ac_cv_func_strtod=yes
    
    	./configure --prefix=${INSTALL_3RDPARTY_DIR} 			
    	make clean
    	make -j4
    	make install
    popd
    
    #TCLBUILD
    #: << TKBUILD
    # build tk
    pushd  ${TK_DIR}/unix
    	./configure 	--prefix=${INSTALL_3RDPARTY_DIR} 	\
    				--with-cflags="-O2"					\
    				--with-tcl=${INSTALL_3RDPARTY_DIR}/lib		\
    				--with-tcllib=${INSTALL_3RDPARTY_DIR}/lib	\
    				--x-includes=/usr/include/X11 				\
    				--x-libraries=/usr/lib/X11/
    	make clean
    	make -j4
    	make install
    popd
    #TKBUILD
    popd
    
    
    # : << OCCTBUILD
    INSTALL_DIR=${CURRENT_DIR}/install/arm
    if [ ! -x "build_arm" ];then
    	mkdir build_arm
    fi
    # fontconfig/fontconfig.h: No such file or directory
    # sudo apt-get install libfontconfig1-dev
    # fatal error: GL/glx.h: No such file or directory
    # sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev
    
    pushd build_arm
    	rm -irf *
    	cmake 	-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}		\
    		-DBUILD_MODULE_Draw=OFF 		\
    		-D3RDPARTY_FREETYPE_INCLUDE_DIRS=${DEPEND_3RDPARTY_DIR}/install/include 			\
    		-D3RDPARTY_FREETYPE_INCLUDE_DIR_freetype2=${DEPEND_3RDPARTY_DIR}/install/include 		\
    		-D3RDPARTY_FREETYPE_INCLUDE_DIR_ft2build=${DEPEND_3RDPARTY_DIR}/install/include/freetype2 	\
    		-D3RDPARTY_FREETYPE_LIBRARY_DIR=${DEPEND_3RDPARTY_DIR}/install/lib		\
    		-D3RDPARTY_FREETYPE_LIBRARY=${DEPEND_3RDPARTY_DIR}/install/lib			\
    		..
    
    	make -j6 && make install
    popd
    # OCCTBUILD
    

测试问题

  • 安装依赖
    • 报错couldn’t find RGB GLX visual or fbconfig
    sudo apt install -y libgl1-mesa-glx libgl1-mesa-dri libglx-mesa0
    sudo apt install -y mesa-utils mesa-utils-extra
    
    • 测试glx是否可用
    glxinfo -v
    

到了这里,关于OCCT ARM版本编译及安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [linux]Ubuntu 18.04安装arm-linux-gcc交叉编译器的两种方法

    第一种:apt安装法: Ctrl+Alt+T弹出终端,使用如下命令进行arm-linux-gcc的安装:   使用如下命令进行arm-linux-g++的安装:   如果要卸载时使用如下命令进行移除,arm-linux-gcc的卸载:   arm-linux-g++的卸载:  第二种源码安装: 目前网上搜索发现,最多人安装的是4.4.3版本的

    2024年02月05日
    浏览(53)
  • OCCT教程二:在visual studio上创建一个occt工程

    上一篇博客讲述如何在windows下使用MSVC对occt进行编译,这一篇演示如何创建简单的OCCT工程. 首先打开visual studio,创建一个C++空项目,并且随便起一个名称,例如Project1  需要两点注意:1.在资源文件中添加一个main.cpp。                           2.在解决方案平台中选择X6

    2024年02月06日
    浏览(53)
  • ARM-Linux 开发板下安装编译 OpenCV 和 Dlib

    安装 OpenCV 和 Dlib 不像在 x86 平台下那样简单,用一句命令就可以自动安装完。而在 ARM 平台中许多软件都需要自行下载编译,且还有许多问题,本篇文章就是记录在 ARM 平台下载 OpenCV 踩过的坑。 硬件环境: RK3568 + Ubuntu20.04。 1、安装 OpenCV 需要的依赖库。 先添加源,以防安装

    2024年04月08日
    浏览(123)
  • linux下boost编译arm版本

    1.下载 https://www.boost.org/users/history/version_1_74_0.html 2.解压 2.编译 3 替换gcc 修改配置文件project-config.jam,将下列的arm gcc编译器替换为你本机的编译器,比如我是用S32G的编译器 编译 ./b2 5.安装

    2024年01月23日
    浏览(40)
  • Ubuntu上搭建ARM Linux GCC交叉编译环境

    在Ubuntu操作系统上搭建ARM Linux GCC交叉编译环境是为了能够在x86架构的主机上编译运行适用于ARM架构的程序。本文将介绍详细的步骤以及相应的源代码。 安装必要的软件包 首先,我们需要安装一些必要的软件包,包括GCC、GNU Binutils和GDB。打开终端,运行以下命令来安装这些软

    2024年02月02日
    浏览(50)
  • ubuntu交叉编译Qt-5库并移植ARM开发板

    前言:本文将介绍Qt5源码方式的交叉编译及安装 下载源码包:qt-everywhere-src-5.12.8.tar.xz 官网下载网址:Index of / 依次选择: 【official_releases】 =【qt】 =【5.12】 =【5.12.8】 =【single】 =【qt-everywhere-src-5.12.8.tar.xz】 先解压QT库压缩包出来,并进入解压出来的库目录。 接下来请按以

    2023年04月08日
    浏览(41)
  • 下载较老版本或最新版本的ARM Linux gcc 交叉编译工具链

    如果开发的 ARM 平台比较的多,需要多个版本的 arm gcc 交叉编译工具链,那么如何获取较新版本的 arm gcc 交叉编译工具链呢? 速度较快的,也比较新的,就到 ARM 官方网站下载 下载地址: https://developer.arm.com/downloads/-/gnu-a GNU-A Downloads 最新的下载地址: https://developer.arm.com/do

    2024年02月14日
    浏览(49)
  • Ubuntu 22.04 搭建arm-linux-gcc交叉编译环境

    如果使用的是64位的Ubuntu系统,建议直接安装64位的arm-linux-gcc交叉编译器 下载地址: https://pan.baidu.com/s/14-lQpsXuEyCcHNHcTXcOyA 提取码: 55at 0. 注意在终端进行粘贴的操作为【Ctrl+shift+v】!! 把下载好的安装包移动到根目录下的tmp目录中(/tmp):在【其他位置】中的【计算机】中找

    2024年02月05日
    浏览(73)
  • ubuntu交叉编译Opencv-4.2及contrib库并移植ARM开发板

             前言:本文介绍在ubuntu-18.04上交叉编译Opencv-4.2.0,交叉编译工具版本是arm-linux-4.9.0。 安装cmake和cmake-gui: $ sudo apt-get install cmake $ sudo apt-get install cmake-qt-gui 安装依赖库: $ sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libtiff5-dev libswscale-

    2024年02月14日
    浏览(49)
  • Linux安装配置ARM交叉编译器arm-linux-gnueabihf-gcc

    ARM交叉编译器是一种用于在一种架构(通常是x86或x86-64)上生成在另一种架构(如ARM)上运行的程序的工具。这种情况称为交叉编译,因为编译器和相关工具在不同的体系结构之间进行交叉工作。 主要用途如下: 嵌入式开发: ARM交叉编译器通常用于嵌入式系统开发,其中

    2024年02月01日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包