【实习】从ubuntu迁移过来的代码,在centos上编译问题的解决汇总
目前自己的开发环境(同将来线上环境)是centos 7。我这里主要实现服务端。需要组里其他同学提供一个接口(视频编辑)。公司内部自己开发环境 通常是台式ubuntu16.04。所以提供视频处理接口是在ubuntu环境下编译的。但是现在放到我的环境进行集成编译,遇到了一些问题,主要是gcc版本还有一些系统库不兼容的问题。特此记录
问题1:gcc升级
问题描述:gcc 版本不兼容,centos 7系的原生gcc版本是4.8,而ubuntu 16.04则比较新,是gcc 5.4.0所以我的环境gcc版本需要向上兼容。
从网上查资料总结出gcc的升级主要有两种方式,一种是源码编译。另一种是
很尴尬的一件事是 公司的开发机(centos)在安装gcc依赖时一直不能成功,应该是网络的问题,即执行这个脚本
问题2:glibc库升级
问题3:binutils库升级
关于什么是 binutils 转自 https://blog.csdn.net/lu_embedded/article/details/78205161
问题描述:在进行g++编译时,报了如下的错误,类似的问题说是需要升级一下binutils
参考帖子:https://blog.csdn.net/raoping2017/article/details/71616719
但是我们的问题还是有所差别,所以我对比了一下ubuntu 16.04和我的centos 7的binutils版本:

centos的binutils版本是 2.25 ubuntu的binutils版本是 2.26
现在需要升级的binutils。
首先先查看一下binutils版本:
ld -v
第1步:下载
wget https://ftp.gnu.org/gnu/binutils/binutils-2.26.tar.gz
第2步:解压,编译安装
tar -zxf binutils-2.26.tar.gz
cd binutils-2.26
./configure --prefix=/usr
make
make install
然后再次查看binutils版本:

升级成功,此时上述问题再次编译,通过。
【实习】从ubuntu迁移过来的代码,在centos上编译问题的解决汇总的更多相关文章
- 在VS13上编译通过的代码放在12上编译-错误:l __dtoui3 referenced in function _event_debug_map_HT_GROW
在VS13上编译通过的代码放在12上编译 遇到错误:l __dtoui3 referenced in function _event_debug_map_HT_GROW 1>------ 已启动 ...
- 解决NTFS分区上的代码在linux上编译后没有权限执行
win7下的cpp代码,在ubuntu下编译后,可执行文件不能执行,root也不行. 将代码拷贝到ubuntu上,再编译生成的可执行文件则可以执行.或者将win7分区上的可执行文件拷贝出来,然后chm ...
- Ubuntu紫色背景颜色代码
前言 我一直很中意Ubuntu的紫,记录一下颜色代码以免忘了! so Ubuntu紫色背景颜色代码background=300924 red = 48 green 9 blue 36
- 在ubuntu上编译chrome
在ubuntu上编译chrome 在ubuntu上编译chrome 红心地瓜 1.获取代码 1)下载tarball,http://chromium-browser-source.commondatas ...
- Java代码调用服务器上的Shell脚本
Java代码调用服务器上的Shell脚本 这里主要是因为我们报表平台有用到用户手工录入的数据作为结果数据且需要纳入saiku去展示 如我们所知,saiku不会自动刷新,所以需要在数据更新接口中调用服务 ...
- Ubuntu 11.10 (Oneiric)上编译带utrace补丁的内核 转
Ubuntu 11.10 (Oneiric)上编译带utrace补丁的内核 首先准备linux内核编译环境: sudo apt-get install fakeroot build-essential ...
- 在Ubuntu|CentOS上安装Shutter截图工具及快捷键设置
简介 Shutter前身叫GScrot,它是一款相当棒的截图软件. 通过Shutter,你可以截取包括选定区域.全屏幕.窗口.窗口内的控件甚至网页的图像.通过内置的强大插件机制,你可以在截图后,对图像 ...
- Docker的ubuntu镜像安装的容器无ifconfig和ping命令的解决
Docker的Ubuntu镜像安装的容器无ifconfig命令和ping命令 解决: apt-get update apt install net-tools # ifconfig apt ...
- Android的学习——ubuntu下android5.1源码的make编译
在repo sync下载源码后,经历了漫长的时间,终于可以进行下一步了. 在进行make之前还需要三个步骤. 1> source build/envsetup.sh:加载命令 ...
随机推荐
- node.js创建简单服务测试请求数据
工具:安装node: 1,创建文件夹 server, 2 ,在server文件夹下分别创建server.js 和 package.json 文件 3,server.js 代码: var express ...
- Linq分组查询统计
这里介绍Linq使用Group By和Count得到每个CategoryID中产品的数量,Linq使用Group By和Count得到每个CategoryID中断货产品的数量等方面. 学经常会遇到Li ...
- 关于java做题时需要注意的事项
1.要熟悉eclipse的使用 2.用java提交时只能有一个public class 且类名只能为Main 3.提交时不能提交包名 4.提交时要将引入的包一起提交 5.虽然java提供了很多的函数, ...
- string formating字符串格式化,function函数,group组,recursion递归,练习
# -*- coding: UTF-8 -*- msg = 'i am {} my hobby is {}'.format('lhf',18) print(msg) msg1 = 'i am %s m ...
- C#编程经验-VS Debug
F11 OneStepDebugF10 ProcessDebugbreakPointDebug(quick location,then use one step debug)
- Ubuntu 14.10 下Hive配置
1 系统环境 Ubuntu 14.10 JDK-7 Hadoop 2.6.0 2 安装步骤 2.1 下载Hive 我第一次安装的时候,下载的是Hive-1.2.1,配置好之后,总是报错 [ERROR] ...
- centos7-软件安装-jdk1.8
JDK1.8下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 安装目录 ...
- MFC文件处理
计算机室如何管理自身所存放着的大量的信息的呢?windows的磁盘管理程序为我们提供了一套严密而又高效的信息组织形式--硬盘上的信息是以文件的形式被管理的. 面向存储的文件技术 什么是文件?计算机中, ...
- 当一个HTML元素需要添加mouseon、mouseout与click事件,或者mouserenter、mouseleave和click事件时,click事件无法触发
当一个HTML元素需要添加mouseon.mouseout与click事件,或者mouserenter.mouseleave和click事件时,click事件无法触发 针对上述问题,我遇到的有两种情况 ...
- (整理)在REHL6.5上部署ASP.NET MVC
最近项目要使用Linux服务器(REHL6.5)+MySQL,因此特尝试操作. 1 Linux 安装Jexus 1.1 下载Jexus 因为服务器没有安装Xwindows,Jexus的下载又出现问题, ...