专栏首页QB杂货铺ubuntu14.04编译gnu global 6.6.3

ubuntu14.04编译gnu global 6.6.3

打算重新折腾下环境,看中了gtags ,可参考 Vim 8 中 C/C++ 符号索引:GTags 篇 ,先记录下编译过程

源码

下载并解压源码

最新的代码到官方下载页面获取 https://www.gnu.org/software/global/download.html

例如我下载的是

 wgets http://tamacom.com/global/global-6.6.3.tar.gz

下载后解压并进入目录

依赖

先安装依赖

sudo apt-get build-dep global
sudo apt-get install libncurses5-dev libncursesw5-dev

配置

再配置,配置的时候可以使用--prefix指定安装目录,考虑到我后续需要在无sudo权限的机器上使用,这里执行安装到用户目录下的usr

./configure --prefix=/home/zhuangqiubin/usr

编译

直接调用make即可

make

本以为make会很顺利,没想到出来一个报错

find.c: In function ‘findassign’:
find.c:557:2: error: ‘for’ loop initial declarations are only allowed in C99 mode
  for (int i = 0; opts[i] != NULL; i++) {
  ^
find.c:557:2: note: use option -std=c99 or -std=gnu99 to compile your code
make[2]: *** [find.o] 错误 1
make[2]:正在离开目录 `/home/zhuangqiubin/usr/tools/global-6.6.3/gtags-cscope'
make[1]: *** [all-recursive] 错误 1
make[1]:正在离开目录 `/home/zhuangqiubin/usr/tools/global-6.6.3'
make: *** [all] 错误 2

懒得改编译参数,直接改下源码算了

vim gtags-cscope/find.c +557

    for (int i = 0; opts[i] != NULL; i++) {

改为

    int i;
    for (i = 0; opts[i] != NULL; i++) {

重新执行一次make

安装

make install

安装后可找到

 ~/usr/bin/global
 ~/usr/bin/gtags 
 ~/usr/bin/gtags-cscope

也可以确认下版本

 global --version

global (GNU GLOBAL) 6.6.3
Powered by Berkeley DB 1.85.
Copyright (c) 1996-2018 Tama Communications Corporation
License GPLv3+: GNU GPL version 3 or later <http://www.gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

本文链接:https://www.cnblogs.com/zqb-all/p/12005654.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • shFlags简介

    看到有脚本中使用了shFlags,于是google了一下,发现还是个挺方便的东西。

    zqb_all
  • spinor/spinand flash之高频通信延迟采样

    极性,一般表示为CPOL(Clock POLarity),即SPI空闲时时钟信号SCLK的电平(0:空闲为低电平; 1:空闲为高电平)

    zqb_all
  • 目标文件函数隐藏初探

    场景如下,需要以.o形式(静态库形式),发布一个库,给其他代码集成。生成库mylib.o之后,使用nm查看,可以查看到很多函数符号。但其实这个库跟外界,应该是只...

    zqb_all
  • 用python做时间序列预测七:时间序列复杂度量化

    Sample Entropy是Approximate Entropy(近似熵)的改进,用于评价波形前后部分之间的混乱程度, 熵越大,乱七八糟的波动越多,越不适...

    程序员一一涤生
  • 秒爆十万字典:奇葩技巧快速枚举“一句话后门”密码

    对于一句话大家都不陌生,有时会需要爆破。爆破的速度和目标的响应速度就有很大的关系了。那如果我们爆破的速度可以提升至少1000倍呢? 首先如下图↓ ? 变量=ec...

    FB客服
  • (二)ROS系统架构及概念 ROS Architecture and Concepts 以Kinetic为主更新 附课件PPT

    第2章 ROS系统架构及概念 ROS Architecture and Concepts

    zhangrelay
  • 算法帝国里的牛人们:欧拉

    大数据文摘
  • 高效的组织活动,乐享帮你

    想要组织一个活动 ,群发邮件通知,不知道会不会淹没在对方的漫漫邮件中;对活动有建议想通过邮件沟通,担心骚扰到其他人。 现在利用乐享,你可以更方便的组织活动: ...

    腾讯乐享
  • Google:数据并行对神经网络训练用时的影响

    近年来,硬件的不断发展使数据并行计算成为现实,并为加速神经网络训练提供了解决方案。为了开发下一代加速器,最简单的方法是增加标准 minibatch 神经网络训练...

    崔庆才
  • redis 在Linux下的安装与配置

    [root@localhost mnt]# tar xzf redis-3.0.7.tar.gz

    授客

扫码关注云+社区

领取腾讯云代金券