2019独角兽企业重金招聘Python工程师标准>>>

<hr> 首先,对之前提到vim环境下中文字符显示乱码的问题作出一个补充。<br> 本人的Redhat内核版本2.4.20,其中vim默认安装的版本为6.1,出现中文乱码个人认为可能有两个原因:<br> 第一,6.1版本的vim过于老旧,对中文部分编码不支持。<br> 第二,之前编译vim源码时,执行./configure命令未添加 --enable-multibyte(支持多重编码)参数。<br> <hr><br> 然后,介绍一下采用vim7.3版本代替之前的vim6.1,并为vim添加gdb调试器补丁的过程。<br> **1、先下载vim-7.3.tar.bz2、vimgdb-for-vim7.3-master.zip这两个压缩包。**<br> vim7.3源码包:<ftp://ftp.vim.org/pub/vim/unix/><br> gdb补丁包:<https://github.com/larrupingpig/vimgdb-for-vim7.3><br> 下载完成后将其放至home目录。<br> 对文件进行解压:<br> \# tar –jxvf vim-7.3.tar.bz2<br> \# unzip vimgdb-for-vim7.3-master.zip<br> 为vim7.3打补丁:<br> \# patch –p0 < ./ vimgdb-for-vim7.3-master/vim73.patch<br> 进入vim73目录,开始编译:<br> \# cd vim73<br> \#./configure --enable-gdb --enable-gui=gtk2 --enable-cscope --enable-multibyte --enable-xim --enable-fontset --with-features=huge<br>

vim7.3的configure配置说明:<br>

  • --enable-gdb #支持gdb调试<br>
  • --enable-gui=gtk2 #gtk2支持,也能使用gnome<br>
  • --enable-cscope #cscope支持<br>
  • --enable-multibyte #双字符支持<br>
  • --enable-xim #输入法支持<br>
  • --enable-fontset #双字符支持<br>
  • --with-features=huge# 最大特性支持<br>

2、当执行完以上配置命令后,可能会编译报错error: cannot compute sizeof (off_t)<br> <br> 原因:<br> vim在进行源码编译时,依赖于Libiconv库,而此时系统可能缺少相关的库,或者有库文件但不在编译寻找的路径中。<br> 解决方法:<br> 安装libiconv库(有则无需安装):<br> 先下载libiconv-1.14.tar.gz文件,网上资源很多:<br> http://www.gnu.org/software/libiconv/<br> 下载完成后将其拷至home目录,解压后,进入目录按照readme执行编译安装:<br> # ./configure --prefix=/usr/local<br> # make ; make install<br>

此时,libiconv库已经安装完毕,但如果进入vim目录继续编译源码,可能仍然提示之前的报错信息,这是因为libiconv库所在路径并不在vim源码编译搜索的路径范围,所以要解决问题,只能向编译器设定额外的工作路径。<br> 命令如下:<br> export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH<br> 此时再次进入vim73目录执行:<br> #./configure --enable-gdb --enable-gui=gtk2 --enable-cscope --enable-multibyte --enable-xim --enable-fontset --with-features=huge<br> 然后执行:<br> # make ; make install<br> 编译安装成功!此时你可以用Vim打开任意带有中文字符的文件,会发现再无乱码出现。<br> <br> 3、此时,配置工作还尚未结束。<br> 还要将vimgdb-for-vim7.3-master /vimgdb_runtime/路径内的文件拷贝到~/.vim/目录下,并在~/.vimrc配置文件中添加如下语句:<br> source ~/.vim/macros/gdb_mappings.vim<br> VimGdb调试器的编译配置工作就此已结束,具体使用请参看vimGBD的文档,或~/.vim/doc/gdb.txt 。<br>

4、最后,本文在编译vim7.3的过程中,还有一个小bug需要您注意。<br> 在指定额外路径的方式上,本文采用的是:<br> export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH<br> 即采用export的方式引导编译器寻找指定路径,这种方式在系统重启后会失效,当您重启系统并启用Vim时,会出现如下提示信息:<br> <br> <br> 一种解决方法是在重启系统之前,用vim打开/etc/bashrc文件,修改其中的LD_LIBRARY_PATH环境变量:<br> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/<br>

但如果您此时已重启系统,可以采用另一种方式解决此问题,当程序执行函数动态链接库时,默认会在缺省目录‘/usr/local/lib’和‘/usr/lib’寻找。<br> 故只要找到libiconv.so.2所在的位置,并将其拷贝至这两个缺省目录下即可。<br>

转载于:https://my.oschina.net/jiangwave/blog/126484

Vim GDB 调试器编译配置说明相关推荐

  1. Linux系列学习(二) - Vim编辑器的介绍及使用、文件编译的过程、Makefile工具、Gdb调试器

    目录 引言: 基本命令补充: cat命令: man命令: head命令: tail命令: find命令: grep命令: ​​​​​​​grep命令与管道"|" 的结合使用: ta ...

  2. Linux调试——gdb调试器的简单使用调试coredump文件

    文章目录 一.背景 二.gdb的指令与使用 1.gdb的基本指令. 2.gdb指令的简单使用 1.进入gdb模式 2.实例说明 三.调试coredump文件 前提:本质上是在调试程序崩溃之后的内存镜像 ...

  3. GDB调试器使用手册

    GDB调试器使用手册     使用GDB:     本文描述GDB,GNU的原代码调试器.(这是4.12版1994年一月,GDB版本4.16) * 目录: * 摘要:                  ...

  4. GCC编译器和GDB调试器常用选项

    GCC编译器 gcc hello.c -o hello                   #将hello.c编译成hello可执行文件 gcc -E hello.c -o hello.i       ...

  5. [转载].gdb调试器快速入门

    调试在我们编写程序时占有重要的地位.在linux下如何使用gdb调试器?下面采用FQA的方式让你快速了解gdb调试器. 1.如何启动gdb调试器呢? 在终端输入 gdb 程序文件名 即可.注意gdb调 ...

  6. 【Linux学习】GDB调试器基本命令必知必会(一)

    本文介绍Linux下GDB调试器常用的基本命令. 测试均在Ubuntu12.10下完成. 先看看GDB调试的效果图: 对应的源代码: //插入排序,GDB调试测试代码 #include <std ...

  7. linux卸载gdb命令,【Linux学习】GDB调试器基本命令必知必会(一)

    本文介绍Linux下GDB调试器常用的基本命令. 测试均在Ubuntu12.10下完成. 先看看GDB调试的效果图: 对应的源代码: //插入排序,GDB调试测试代码 #include int x[1 ...

  8. 使用GDB调试器(一)

    使用GDB调试器 GDB概要 ---- GDB是GNU开源组织公布的一个强大的UNIX下的程序调试工具.也许,各位比較喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但假设你是在UNIX平台下做 ...

  9. GDB调试器源代码分析系列--Inferior call的实现与分析(1)

    [转] GDB调试器源代码分析系列--Inferior call的实现与分析(1) (2011-10-11 20:41) 标签: 分析 分类: 调试器 先说说几个概念: (1)     什么是infe ...

最新文章

  1. 2010年杭电计算机研究生复试---笔试编程
  2. linux下一个apache+tomcat负载均衡和集群
  3. Andrew Ng - 深度学习工程师 - Part 2. 改善深层神经网络:超参数调试、正则化以及优化(Week 1. 机器学习的实用层面)...
  4. 猿辅导python面试_猿辅导面试经历—个人感受
  5. LeetCode 915. 分割数组
  6. mysql 日志 设置 set_MySQL 慢查询日志的开启与配置
  7. 初学者python笔记(内置函数_1)
  8. 容器(Context)使用之支付系统
  9. centos安装中文支持(转)
  10. linux下怎么卸载mysql数据库_linux 怎么完全卸载mysql数据库
  11. Json转换成excel 离线版
  12. MIPI接口和DVP接口的区别及优点
  13. 什么是共模干扰和差模干扰,它们是怎么产生的
  14. 基于JavaSwing开发天猫购物商城系统(用户 管理员角色) 课程设计 毕业设计源码
  15. 计算机的音量打不开,电脑静音,音量打不开.怎么办?
  16. Python — 词汇表(一)
  17. 基于ABC人工蜂群优化算法的最优解搜索算法matlab仿真
  18. BG-sentry的安装和配置
  19. SD-WAN智慧消防解决方案
  20. ClickHouse快速入门

热门文章

  1. myeclipse堆栈溢出
  2. CSS的float和position
  3. 汉字字符内码查询_计算机等级考试查询系统
  4. html搜索框 模糊搜索,前端js模糊搜索(模糊查询)
  5. linux搭建简单聊天环境,快速搭建Linux环境-运维必备
  6. docker 启动容器的时候没-p 后面怎么加-p_基于Docker搭建基础自动化部署
  7. python bytes_Python每天必学之bytes字节
  8. python123平台在线编程_Python程序设计实验报告一:熟悉IDLE和在线编程平台
  9. TensorFlow实现条件批归一化(Conditional Batch Normalization)
  10. 深度残差网络(ResNet)详解与实现(tensorflow2.x)