创制谐和的VIM编辑器,源码安装LAMP

by admin on 2019年9月21日

以下是安装语句:

  VIM编辑器被称呼编辑器之神,那作为叁个程序员就应该做三个征服神的人!本文子禽教你搭建二个可见自动补全、变量查找、目录显现等不输IDE的VIM。

创制谐和的VIM编辑器,源码安装LAMP。源码安装Apache和MySQL在此之前曾经写过,见链接:
源码安装Apache:
源码安装MySQL:

一、JSQLParser介绍

JSQLParser是一款开源的SQL语句深入分析器,使用它能够把SQL语句分析成一组等级次序明显的java类。
JSQLParser的连串地址为:

小编下载到的版本为0.9.4。

cd grpc_foldergit submodule update --initcmake ..make -j 4sudo make install

1. 主题

  刺客喜欢的主旨有七个:molokaiSolarized

一、下载文件(本文安装的PHP版本为7.2.4)

官方网站下载地址:http://www.php.net/

创制谐和的VIM编辑器,源码安装LAMP。二、搭建意况介绍

  1. Java版本为JDK1.8;
  2. JSQLParser版本为0.9.4,笔者是从上面的品种地址中下载到的;
  3. Eclipse版本为Mars Release (4.5.0)

但是编写依赖gRPC的次第,开掘不能调用gRPCCMake文本,错误提醒如下所示:

1.1 molokai

  molokai的特色是色彩艳丽,设置为暗色背景很吻合程序猿开拓。
并且网络的科目都以应用Bundle进行设置,但徘徊花尝试后开采自个儿不能日常安装。依旧一步步的从GIt举行设置更可信点。

  • git clone
    git@github.com:tomasr/molokai.git
  • 将colors 文件夹的molokai.vim 拷贝到~/.vim/colors
  • 在~/.vimrc中增添如下语句:
colorscheme  molokai
set t_Co=256
set background=dark

噔噔噔噔!张开vim编辑器是或不是变得很炫彩了?

bf88必发唯一官网 1

tool-molokai.png

1、下载文件

 [root@VM data]# wget http://cn.php.net/distributions/php-7.2.4.tar.gz

三、导入源码工程

  include could not find load file:    /usr/local/lib/cmake/grpc/gRPCTargets.cmake

1.2 Solarized

  Solarized宗旨是选用最普及的vim大旨。但刺客如故更爱好molokai一点。

  • git clone
    git@github.com/altercation/vim-colors-solarized
  • 将colors 文件夹的molokai.vim 拷贝到~/.vim/colors
  • 在~/.vimrc中增加如下语句:
syntax enable
set background=dark
colorscheme solarized

相当的慢地张开你的vim编辑器看一下吧。

2、检查文件sha256值是不是合营:若不相称需重新下载

[root@VM download]# openssl dgst -sha256 php-7.2.4.tar.gz
SHA256(php-7.2.4.tar.gz)= 58e28e978baea0fe9009432bcb436934eaacccfdcb5f5409c7526431a595857b

3.1 导入Maven项目

率先我们将下载到的源码解压后得到的档案的次序文件夹导入到Eclipse中,注意那一年我们要以Maven项目标样式导入,如下图:
bf88必发唯一官网 2
自个儿导入后的动静是这般:
bf88必发唯一官网 3
有一些不清茫然的一无所长,上面我们挨个解决。

gRPCissue列表中,寻觅到施工方案(CMake设置时,假诺第三方正视在未指明的状态下,暗中同意均通过源码安装,假诺不能通过源码安装,则无从转移gRPCTargets.cmake文件):
于是需求内定第三方依赖是透过源码安装,依旧已经通过包管理器设置完结.
因为早就设置了zlibprotobuf以及cares,由此修改cmake ..为:

2. VIM 安装

  • 作为二个技术员怎么可以不会动用源码这么高(苦)大(逼)的软件安装形式吧?好啊!是因为本人要安装YCM(YouCompleteMe)代码自动不全工具需求Python的扶助,但经过命令行安装的VIM一般不支持Python。

3、解压文件

[root@VM download]# tar -vxzf php-7.2.4.tar.gz

3.2 加多注重库

张开项目中的pom.xml文件,从在那之中的上面这段代码中大家得以看到,JSQLParser正视Junit4.11,commons-io
2.4:
bf88必发唯一官网 4

接下来我们查阅项目中Maven的借助库中是还是不是业已有这几个信赖库,小编在导入之后自带了这一个依赖库,因而没有供给再增添,尽管你的花色中绝非这个正视库,大家得以分级下载,在通过Build
帕特h中的Library增添这一个库,具体的下载和丰硕依赖库请百度。
bf88必发唯一官网 5

接下来依照官方文书档案
,要求加上一些代码(石榴红部分),注意图中圆圈的一部分,那意味着前段时间的JSQLParse的版本号,作者的是0.9.4,千万无法填错,不然会有局部类找不到(恐怕和版本有关系),那一个部分新兴发觉,其实是用于增多jsqlparse0.9.4.jar库的,那几个手续做了今后,就不需要做步骤3.5了,找不到的类会直接调用库中的。
bf88必发唯一官网 6

cmake  -DgRPC_INSTALL=ON -DgRPC_ZLIB_PROVIDER=package -DgRPC_CARES_PROVIDER=package -DgRPC_PROTOBUF_PROVIDER=package -DgRPC_SSL_PROVIDER=package ..

2.1 卸载VIM

  假令你的微型Computer上安装着vim,你要求完全卸载此前的VIM,方法很简短也很粗大鲁:

sudo apt-get remove vimsudo apt-get remove vim-runtime
sudo apt-get remove vim -tiny
sudo apt-get remove vim-common
sudo apt-get remove vim-doc
sudo apt-get remove vim-script

保障把vim卸载的渣渣都不剩。

二、编写翻译和装置

3.3 修复一些BUG

就是我们做了上面一些干活,pom.xml文件中或许存在五个谬误:
bf88必发唯一官网 7
谬误的提醒音信为:
bf88必发唯一官网 8
由此百度,作者找到了八个消除办法
http://blog.sina.com.cn/s/blog\_6accbcc30101duig.html,
在< plugins >< /plugins >标签的外侧增多叁个<
pluginManagement >< /pluginManagement >的价签。
像这样:

<build><pluginManagement><plugins><plugin>...</plugin>...</plugins></pluginManagement></build>

本条时候理应红叉叉的错误提醒就应有没有了。

依赖gRPC的工程得以动用如下语句增多gRPC依赖:

2.2 安装

  先安装一下重视吧,很粗大略,反正也十分少:

sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev libgtk2.0-dev
 libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev libxt-dev
 python-dev python3-dev ruby-dev  liblua5.1-dev libperl-dev git

  然后下载vim,之后张开布置、编写翻译、安装,三板斧嘛,开端:

cd ~
git clone https://github.com/vim/vim.git
cd vim
./configure --with-features=huge \
            --enable-multibyte \
            --enable-rubyinterp=yes \
            --enable-pythoninterp=yes \
            --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu \
            --enable-python3interp=yes \
            --with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64_linux-gnu \
            --enable-perlinterp=yes \
            --enable-luainterp=yes \
            --enable-gui=gtk2 --enable-cscope --prefix=/usr
make VIMRUNTIMEDIR=/usr/share/vim/vim80
cd ~/vim
sudo make install

齐活

1、安装运维正视(编写翻译报错开采的,先装一下)

依次运维以下命令:

[root@VM php-7.2.4]# yum install libxml2 libxml2-devel -y
[root@VM php-7.2.4]# yum install bzip2 bzip2-devel -y

至于何以安装以上重视,以下列出报错的音信:

报错信息1:
configure: error: libxml2 not found. Please check your libxml2 installation.
解决方法:
[root@VM php-7.2.4]# yum install libxml2 libxml2-devel -y

报错信息2:
configure: error: Please reinstall the BZip2 distribution
解决方法:
[root@VM php-7.2.4]# yum install bzip2 bzip2-devel -y

3.5 使用JavaCC生成一些类

在大家做完以上步骤之后,项目中还设有许多张冠李戴(若无的话,祝贺你已经安装成功了),都是出于找不到类变成的,那是因为JSQlParse是基于JavaCC的(关于JavaCC(http://www.cnblogs.com/Gavin\_Liu/archive/2009/03/07/1405029.html),%EF%BC%8C)
JSQLParser源码中SQL分析那部分是应用JavaCC来生成的,在JSQLParser的源码中,你可以看出JSqlParserCC.jj那样二个文本。
此间我们先供给安装JavaCC,在Eclipse中有多个JavaCC的插件,具体安装格局,能够仿照效法这里()
安装到位之后,找到上边这几个文件,
bf88必发唯一官网 9
在那个文件上右击,选拔图中卡其灰部分:
bf88必发唯一官网 10
一会自此就能够转变很多Java文件,把那个新生成的Java文件复制到这里:
bf88必发唯一官网 11

别的说一点,凡是在src/test/resourcesbf88必发唯一官网,中的全体存在不当的公文都得以去除,这么些文件都是笔者写的例证,有些代码相比老,和脚下版本不相配变成的。

发源为知笔记(Wiz)

if (WITH_GRPC)    find_package(gRPC CONFIG)    # First attempt to set up gRPC via cmake; but if cmake config files aren't    # available, fallback to pkg-config.    if (gRPC_FOUND)        set(GRPC_CPP_PLUGIN $<TARGET_FILE:gRPC::grpc_cpp_plugin>)        list(APPEND LIGHTSTEP_LINK_LIBRARIES gRPC::grpc++)        include_directories(SYSTEM                $<TARGET_PROPERTY:gRPC::grpc++,INTERFACE_INCLUDE_DIRECTORIES>)    else()        message("Falling back to finding gRPC with pkg-config")        find_program(GRPC_CPP_PLUGIN grpc_cpp_plugin)        if (NOT GRPC_CPP_PLUGIN)            message(FATAL_ERROR "grpc_cpp_plugin not found!")        endif()        find_package(PkgConfig REQUIRED)        pkg_search_module(GRPC REQUIRED grpc)        pkg_search_module(GRPCPP REQUIRED grpc++)        list(APPEND LIGHTSTEP_LINK_LIBRARIES ${GRPCPP_LDFLAGS} ${GRPC_LDFLAGS})        include_directories(SYSTEM ${GRPC_INCLUDE_DIRS} ${GRPCPP_INCLUDE_DIRS})    endif

3.安装YCM

  VIM被叫做编辑器之神,而YCM则是vim中最难装的插件,几乎正是神的脚后跟
在网络寻找YCM的装置,基本都以行使Bundle安装,可是小编试了几许次依然安装不上。算了照旧苦逼地从源码安装吧。

  经过剑客小编的品尝,终于从源码安装上了YCM!

2、步向到解压文件目录,依次运转以下命令:

[root@VM php-7.2.4] ./configure --prefix=/usr/local/php7 --with-pdo-mysql=mysqlnd --with-openssl --with-mysqli=mysqlnd --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache2/bin/apxs  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts  --disable-fileinfo
[root@VM php-7.2.4] make
[root@VM php-7.2.4] make install

PS:
假定你感觉自己的篇章对您有赞助,能够扫码领取下红包,感激!
bf88必发唯一官网 12

3.1 下载YCM

  首先将YCM从git下载到本地,小编选了
~/.vim/bundle/。因为事先经过Bundle安装未有旗开马到,正好有与此相类似八个文书夹,未有的温馨见四个便是了。。。。

# 下载 (在 `~/.vim/bundle` 目录下)
git clone --recursive git@github.com/Valloric/YouCompleteMe.git
# 检查完整性(在 `~/.vim/bundle/YouCompleteMe` 目录下)
git submodule update --init --recursive

像这种类型就从头编写翻译安装了是么? NO No NO!,大家还索要安装注重吧

#
sudo apt-get install llvm-5.0 clang-5.0 libclang-5.0-dev  libboost-all-dev

自身联合选拔了5.0本子,你要基于自个儿的软件源里的版本进行安装哦。

3、参数解释

--prefix=/usr/local/php7  # 指定php安装的路径
--with-pdo-mysql=mysqlnd --with-openssl # 指定mysql的安装目录  #支持ssl功能
--with-mysqli=mysqlnd # 可以让mysql与php结合的接口
--enable-mbstring --with-freetype-dir  # 指定可以支持中文非一个字节能表示语言  # 加载freetype的头文件,可以支持不同字体
--with-jpeg-dir --with-png-dir # 支持jpep格式图片 #支持pnp格式图片
--with-zlib --with-libxml-dir=/usr # 支持压缩库  # 指定xml的库路径
--enable-xml  --enable-sockets  #支持扩展标记语言  # 支持套接字的通信功能
--with-apxs2=/usr/local/apache2/bin/apxs  #指定apsx2配置目录
--with-config-file-path=/etc    # 指定php配置文件的路径(/etc/php.ini)
--with-config-file-scan-dir=/etc/php.d  # 支持php文件的附件配置文件(/etc/php.d/*.ini)
--with-bz2  --enable-maintainer-zts #支持bz2的压缩库  # 此选项是否安装取决于你的Apache工作的mpm模式(【prefork不需要加载】【event或work
mpm工作模式必须要加此选项】 验证Apache mpm工作模式命令:httpd -M )
--disable-fileinfo  #可不加,若安装时出现内存不足报错需要,错误信息:make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

3.3 编写翻译安装

在家目录下新建三个装置目录,然后开展实施一下指令:

mkdir ~/.ycm_build
cd ~/.ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_BOOST=ON -DUSE_SYSTEM_LIBCLANG=ON . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
cmake -G "Unix Makefiles" -DUSE_SYSTEM_BOOST=ON -DEXTERNAL_LIBCLANG_PATH=/usr/lib/x86_64-linux-gnu/libclang-5.0.so . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
cmake --build . --target ycm_core --config Release

将布署文件拷贝到 ~/.vim

cp ~/.vim/bundle/YouCompleteMe/third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim/

最后在 ~/.vimrc中加多以下语句:

let g:ycm_server_python_interpreter='/usr/bin/python'
let g:ycm_global_ycm_extra_conf='~/.vim/.ycm_extra_conf.py'

张开你的编辑器看一下吗!

bf88必发唯一官网 13

tool-YCM.png

三、整合apache+php环境

修改httpd.conf配置文件(/usr/local/apache2/conf),到场如下语句:

LoadModule php7_module    modules/libphp7.so  (默认已存在)

AddType  application/x-httpd-php .php .phtml

#配置文件中已有,需把index.php加入index.html之前
<IfModule dir_module>
    DirectoryIndex index.php index.html 
</IfModule> 

4.安装ctags和taglist

  无人不晓,在Linux阅读大型源码是一件比较困难的事情,大家得以行使SourceInsigh或许UnderStand,然而总有一种被奸淫的痛感,因为这么做不Linux啊。

  总的来讲,ctags担当将源码中的种种变量生成种种标签,我们能够每日查看调用地方。而taglist基于ctags提供了结构化浏览的法力,大家能够查阅三个结构体中有啥变量等等。

四、测验注解

在/usr/local/apache2/htdocs目录下创设index.php测量检验页面,推行如下命令:

vim  /usr/local/apache2/htdocs/index.php
#添加以下语句 
<?php
phpinfo();
?>

再也开动apache服务,通过IP访谈分界面如下图,即意味着LAMP情况搭建成功。

bf88必发唯一官网 14

4.1 安装ctags

采纳命令行:

sudo apt-get install ctags

抑或从github上下载源码后,使用三板斧:

./configure && make && make install

.vimrc中添加

map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>

我们就足以进来代码根目录后,张开Vim,按下Ctrl-F12急速键自动生成tags文件。命令试行完后,会在源代码目录生成tags文件。Vim暗中同意会自动读取当前目录下的tags文件,所以无需修改~/.vimrc文件。

那儿,大家已经有所定义跳转的效果了。有两组快速键是最常用的。

               Ctrl-]    跳转到光标所在符号的定义。
               Ctrl-t    回到上次跳转前的位置。

愈来愈多职能通过命令man ctags或在Vim命令行下运行help ctags查询。

4.2 安装Taglist

从世间网站下载talist包,解压打~/.vim,注意的是一旦从前已经存在了doc或者plugin文本夹,大家只须要将对应文件放置到相应文件夹就能够。

然后在 .vimrc中增添如下两句:

let Tlist_Show_One_File=1  
let Tlist_Exit_OnlyWindow=1  

5 安装NERDTree

  大家使用VIM举行大型源码编程的时候总是力不能及看出目录结构,那是一件比较窝火的事体,那么大家就足以选用NEWranglerDTree来化解。方法很简短:

git clone https://github.com/scrooloose/nerdtree.git ~/

接下来将引得中的文件放置到相应的文件夹就可以。步入 vims使用命令
NERDTreeToggle看看目录结构出来了从未有过。我们也能够在.vimrc中装置飞速键

map <F6> :NERDTreeToggle<CR>

如此这般就足以采取 F6展开大概关闭目录结构了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图