【 apollo7.0-arm编译问题】:-msse4.1/__128i/等报错

【 apollo7.0-arm编译问题】:-msse4.1/__128i/等报错

在aarch64架构编译apollo7.0中的spatio_temporal_ground_detector模块时,
提示报错:
gcc: error: unrecognized command line option ‘-msse4.1’
原因在于:
-m打开与硬件相关的一些选项,sse便是针对x86、x86_64进行的优化,在ARM上没有这个选项。

同时spatio_temporal_ground_detector模块依赖perception/common/i_lib/pc
在编译pc/i_struct_s.h提示报错:
__m128i、_mm_set1_epi32等相关的内容未定义。
这些内容定义在emmintrin.h中,
emmintrin.h是Intrinsic的一部分。在MMXSSE系列中,intrinsics表示一种封装的MMX或者SSE指令。
这些都是intel推出的在x86架构下指令集,arm是无法使用的。
因此,需要将其改写为neon的代码,即在arm架构下可以使用的指令集。这一步操作,英特尔提供了相应的函数,也就是sse2neon.h

解决方案:
下载文件sse2neon.h下载地址
将该文件拷贝到apollo-docker环境下:/usr/include/ (任意可以识别到路径都可以)
在pc/i_struct_s.h中:#include “sse2neon.h”
在spatio_temporal_ground_detector模块的BUILD文件中:去掉或注释 #copts = [“-msse4.1”],
即可。

参考:
[1] aarch64架构编译osgearth2.10过程中报错,找不到emmintrin.h
[2] Jetson ARM SeetaFace编译
[3] mirrors / dltcollab / sse2neon

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
root@in_dev_docker:/apollo# bash scripts/msf_create_lossless_map.sh /apollo/hdmap/pcd_apollo/ 50 /apollo/hdmap/ /apollo/bazel-bin WARNING: Logging before InitGoogleLogging() is written to STDERR E0715 22:08:35.399576 6436 lossless_map_creator.cc:162] num_trials = 1 Pcd folders are as follows: /apollo/hdmap/pcd_apollo/ Resolution: 0.125 Dataset: /apollo/hdmap/pcd_apollo Dataset: /apollo/hdmap/pcd_apollo/ Loaded the map configuration from: /apollo/hdmap//lossless_map/config.xml. Saved the map configuration to: /apollo/hdmap//lossless_map/config.xml. Saved the map configuration to: /apollo/hdmap//lossless_map/config.xml. E0715 22:08:35.767315 6436 lossless_map_creator.cc:264] ieout_poses = 1706 Failed to find match for field 'intensity'. Failed to find match for field 'timestamp'. E0715 22:08:35.769896 6436 velodyne_utility.cc:46] Un-organized-point-cloud E0715 22:08:35.781770 6436 lossless_map_creator.cc:275] Loaded 245443D Points at Trial: 0 Frame: 0. F0715 22:08:35.781791 6436 base_map_node_index.cc:101] Check failed: false *** Check failure stack trace: *** scripts/msf_create_lossless_map.sh: line 11: 6436 Aborted (core dumped) $APOLLO_BIN_PREFIX/modules/localization/msf/local_tool/map_creation/lossless_map_creator --use_plane_inliers_only true --pcd_folders $1 --pose_files $2 --map_folder $IN_FOLDER --zone_id $ZONE_ID --coordinate_type UTM --map_resolution_type single root@in_dev_docker:/apollo# bash scripts/msf_create_lossless_map.sh /apollo/hdmap/pcd_apollo/ 50 /apollo/hdmap/
07-16

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值