为了拓宽TSINGSEE青犀视频云边端架构的兼容性,我们的研发团队会不断编译不同的版本,适应不同的平台以及语言。在编译Intel Media SDK git最新版本21.1.3时,编译报错:error"SSE4.1 instruction set not enabled",无法继续进行了,在此期间,我们尝试了多种方法,包括更新gcc版本,cmake版本,升级内核版本,均未解决该问题。
Github 提issue:
1、更新gcc 版本
yum install centos-release-scl yum install devtoolset-8 //升级到gcc7.x.x版本
2、更新cmake版本
- 查看当前cmake版本 [root@localhost ~]# cmake -version cmake version 2.8.12.2
- 进行卸载 [root@localhost ~]# yum remove -y cmake
- 进行安装包的下载,也可以下载好安装包后传至相应的目录 [root@localhost ~]# mkdir /opt/cmake [root@localhost ~]# cd /opt/cmake/
- 下载或拷贝,解压 [root@localhost cmake]# wget https://cmake.org/files/v3.16/cmake-3.16.6.tar.gz [root@localhost cmake]# tar -zxvf cmake-3.16.6.tar.gz
- 安装基本工具 [root@localhost cmake]# yum install -y gcc gcc-c
- 进行编译连接 [root@localhost cmake]# ./configure --prefix=/usr/local/cmake
- 安装 [root@localhost cmake]# cd cmake-3.16.6 [root@localhost cmake-3.16.6]# make && make install
- 创建链接 [root@localhost cmake-3.16.6]# ln -s /usr/local/cmake/bin/cmake /usr/bin/cmake
- 查看版本 [root@localhost cmake-3.16.6]# cmake -version cmake version 3.16.6 CMake suite maintained and supported by Kitware (kitware.com/cmake). [root@localhost cmake-3.16.6]# [root@localhost cmake-3.16.6]#
3、升级Centos7内核
由于以上三种方式均未解决问题,我们又探寻了其他的方案,最后发现有两种方式可以解决该问题。
解决方案一:
回退到上一个大版本,重新编译。安装readme 相关依赖后,编译成功
解决方案二:
如果需要使用最新版本,可以关注github issue 的处理进度。
在最新版本中1192处解决合并到主分支中,拉取最新代码编译通过,问题解决。