美文网首页
Kylin(arm64-linux上安装osgearth踩坑记)

Kylin(arm64-linux上安装osgearth踩坑记)

作者: 秸秆混凝烧结工程师 | 来源:发表于2023-05-18 17:17 被阅读0次

    这里先吐槽一句 osgearth 这家厂商从没考虑操作系统的架构,必须吐槽

    这里使用源码编译的方式优雅安装

    代码仓库 :https://github.com/gwaldron/osgearth
    arm架构替换指令集: “https://gitcode.net/mirrors/dltcollab/sse2neon?utm_source=csdn_github_accelerator”

    安装步骤:

    1.遇到已经安装的子包怎么办:
    sudo dpkg -i --force-overwrite ***path* #强制安装

    1. 安装依赖
      sudo apt-get install libglu1-mesa-dev libgl1-mesa-dev libosgearth-dev libosgearthUtil-dev libosgearthFeatures-dev libosgearthAnnotation-dev

    3.编译和安装OSGEarth:

    cd osgearth
    mkdir build
    cd build
    cmake .. # 这里来很坑装的包 看步骤1 中的招解决即可
    make -j4 # 这一步遇到到问题会很多 烦请chatGPT
    sudo make install

    历史上最坑的莫过于 make 过程中报错是架构指令集不支持的场景,怎么办?

    看看 “麒麟 Linux大神写的帖子” aarch64架构编译osgearth2.10过程中报错,找不到emmintrin.h_鱼月半的博客-CSDN博客 第八句话 ,就是自己下载指令集,放在自己工程目录下;

    注意这个库只有X86架构才能用 别的架构不能用,emmintrin.h是Intel的编译器套件(Intel Compiler Suite)中的一个库文件头文件。因为Intel编译器套件主要面向X86体系结构,在Arm体系结构中不能直接使用emmintrin.h库文件。

    在Arm平台上,可以使用Neon指令集实现类似于SSE、SSE2、SSE3和SSE4指令集的功能。Arm体系结构中相应的头文件名称为arm_neon.h。该库文件包含了许多实现SIMD指令的内联函数,可用于Arm Cortex-A和Cortex-R处理器的开发。可以使用GCC或Clang编译器来使用arm_neon.h头文件。
    这里贴上下载地址: https://github.com/DLTcollab/sse2neon/ 将下载后sse2neon.h 文件放到工程报错的目录下 并修改头文件中 #include <emmintrin.h> 为 #include <sse2neon.h>

    重新make 即可

    阿西吧 装这个花了很多时间

    运行:

    osg_view ~/osgearth/test/simple_earth.*

    相关文章

      网友评论

          本文标题:Kylin(arm64-linux上安装osgearth踩坑记)

          本文链接:https://www.haomeiwen.com/subject/wmtgsdtx.html