ubuntu18 编译安装gccxml
最近需要在ubuntu上安装gccxml,我的ubuntu版本是18。
使用sudo apt-get install gccxml提示找不到gccxml,最后使用了编译安装的方式安装gccxml。
1.下载
1 git clone https://github.com/gccxml/gccxml.git
如果下载速度过慢的话,可以先将此项目挂载到码云上,再使用码云的地址下载。
下载完毕后,会在当前文件目录下生成一个名为gccxml的文件目录。
2.编译安装
按照官网的教程,在gccxml文件夹所在目录(gccxml文件夹之外)新建一个gccxml-build文件夹
1 mkdir gccxml-build
之后,检查系统有无cmake(cmake --version),如果没有,sudo apt-get install cmake;
1 cd gccxml-build
2 cmake ../gccxml
3 make
4 make install
执行到make时,编译报错:(1). floor_log2,exact_log2重定义;(2).except.c:对"libc_name_p"未定义的引用。
按照CSDN上的一篇博客进行修改:https://blog.csdn.net/ztguang/article/details/71172559
错误1:
打开gccxml/GCC/gcc/toplev.h文件,
1 /* 这两个函数已经在toplev.c中定义过了,在toplev.h中将其注释掉
2 extern inline int
3 floor_log2 (unsigned HOST_WIDE_INT x)
4 {
5 return x ? HOST_BITS_PER_WIDE_INT - 1 - (int) CLZ_HWI (x) : -1;
6 }
7
8 extern inline int
9 exact_log2 (unsigned HOST_WIDE_INT x)
10 {
11 return x == (x & -x) && x ? (int) CTZ_HWI (x) : -1;
12 }
13 */
错误2:
打开gddxml/GCC/gcc/cp/cfns.h
1 //找到这部分代码,并改为如下
2 //#ifdef __GNUC__
3 //__inline
4 //#endif
5 const char*
6 libc_name_p (register const char *str, register unsigned int len);
修改完成后,回到gccxml-build文件夹。
我将gccxml-build中的所有文件都删掉,rm -rf *,之后重新执行:
1 cmake ../gccxml
2 make
3 make install
完成后,gccxml --version,显示GCC-XMl version 0.9.0
安装成功。
ubuntu18 编译安装gccxml的更多相关文章
- Ubuntu18.04下编译安装Guitarix 0.37.3
准备工作 源文件下载 https://sourceforge.net/projects/guitarix/files/guitarix/ 安装依赖. 参考 https://sourceforge.ne ...
- ubuntu18.04 编译安装 apache php
1. apache apache 需要依赖几个模块:apr, apr-util, pcre,也分别源码安装. 1.1 编译安装 1.1.1 apr apr-util 下载地址:http://apr.a ...
- Linux c++ vim环境搭建系列(3)——Ubuntu18.04.4编译安装youcompleteme
3. youcompleteme编译安装 参考网址: https://github.com/ycm-core/YouCompleteMe#linux-64-bit 建议不要用这个博客的方法: http ...
- Linux c++ vim环境搭建系列(2)——Ubuntu18.04.4编译安装llvm clang
2. 源码编译安装llvm clang 参考网址: https://llvhttps
- Linux c++ vim环境搭建系列(1)——Ubuntu18.04.4编译安装vim8.2
1. vim源码编译安装 参考网址: https://github.com/ycm-core/YouCompleteMe/wiki/Building-Vim-from-source 安装各类依赖库 s ...
- 编译安装和apt安装Nginx1.14.0
安装依赖 yum -y install gcc gcc-c++yum -y install zlib zlib-devel openssl openssl-devel pcre-devel 在Ubun ...
- Centos7.4和Ubuntu18.04安装PHP7.2
安装依赖 yum install gcc-c++ libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcu ...
- Ubuntu16.04编译安装Redis Desktop Manager
Redis Desktop Manager for OSX&Ubuntu 的安装版是收费的, 如果自己编译则是免费的. 安装过程参考官方提供的文档 http://docs.redisdesk ...
- ubuntu18.04 安装hadoop 2.7.3+hive 2.3.4
1. 安装hadoop 详细请参见本人的另外一片博文<Hadoop 2.7.3 分布式集群安装> 2. 下载hive 2.3.4 解压文件到/opt/software -bin.tar.g ...
- 编译安装msyql
环境: ubuntu18.04.2 mysql5.7.21 #创建mysql属组 groupadd mysql useradd -g mysql mysql #查看属组 tail /etc/passw ...
随机推荐
- ansible系列(24)--ansible的loop循环语句
目录 1. loop循环语句 1.1 使用循环批量安装软件 1.2 使用循环批量启动服务 1.3 使用循环批量创建用户 1.4 使用循环批量拷贝文件 1. loop循环语句 在写 playbook 的 ...
- 那什么是URL、URI、URN?
URI Uniform Resource Identifier 统一资源标识符 URL Uniform Resource Locator 统一资源定位符 URN Uniform Resource Na ...
- AIRIOT答疑第3期|如何使用物联网平台的可视化组态引擎?
丰富组件,满足千人千面! AIRIOT物联网低代码平台的可视化组态引擎,具备丰富的可视化看板及组件,满足各类工艺流程图.数据可视化需求.支持三维编辑.图形绘制.图表设计等设计方式,PPT模式设计软件界 ...
- java基础 韩顺平老师的 异常 自己记的部分笔记
443,异常处理入门 package com.hspedu.exception_; public class Exception { public static void main(String[] ...
- 为什么不推荐在Spring Boot中使用@Value加载配置
@Value注解相信很多Spring Boot的开发者都已经有接触了,通过使用该注解,我们可以快速的把配置信息加载到Spring的Bean中. 比如下面这样,就可以轻松的把配置文件中key为com.d ...
- 服务器root密码忘记,使用centos7 紧急模式修改root密码
一.实战场景 公司一台centos7服务器root密码忘记了,需要你修改root密码,找回root身份. 二.进入紧急模式修改root密码 首先重启服务器,看到这界面时选择第一项,按下e键进行编辑 2 ...
- Gin 框架的执行流程
Gin框架是一个用Go语言编写的高性能Web框架,它基于httprouter实现,具有快速.简洁和高效的特性. 以下是Gin框架处理HTTP请求的大致执行流程: 1 初始化Gin引擎: 用户创建一个新 ...
- 基于 ESP8266_RTOS_SDK 驱动 HC-SR04
平台 芯片 ESP8266EX 模组 ESP-12F 开发板 NodeMCU SDK ESP8266_RTOS_SDK branch master commit 83517ba1f5e26b9413f ...
- 深入剖析Arthas源码
一. 前言 Arthas 相信大家已经不陌生了,肯定用过太多次了,平时说到 Arthas 的时候都知道是基于Java Agent的,那么他具体是怎么实现呢,今天就一起来看看. 首先 Arthas 是在 ...
- 分布式缓存NewLife.Redis
NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标. Redis协议基础实现位于Redis/RedisClient,FullRedis为扩展实现,主要增加列表结构 ...