web-dev-qa-db-ja.com

vimのコンパイル中にtgetent()が見つかりません

現在、vimセットアップにYouCompleteMe拡張機能をインストールしようとしていますが、vimのバージョンが7.3.584以降である必要があります。 Ubuntu 12.10に同梱されているvimは7.3.547なので、 この手順 に従ってソースからvimを再コンパイルする必要がありました。

命令が言うように、私は実行しました:

 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 Ruby-dev Mercurial 

これで、コンパイルに必要なすべてのパッケージが得られるはずです。ただし、vimソースのクローンを作成し、コンパイル用の構成の微調整を開始しようとすると、次のようになります。

 ... 
-lcursesでtgetentをチェックしています...はい
 termcapライブラリは使用できません
ターミナルライブラリが見つかりません
 tgetentをチェックしています()... configure:エラー:見つかりません!
ターミナルライブラリをインストールする必要があります。たとえば、ncurses。
または、-with-tlib。
を使用してライブラリの名前を指定します。

私はいくつかの調査を行い、ターミナルライブラリとしてncursesを指定する必要があるという一般的な感覚を得ました。しかし、私がしたとき

 ./ configure --with-tlib = ncurses 

怒鳴る

 ... 
-with-tlib引数をチェックしています... ncurses 
 ncursesライブラリとのリンクをチェックしています... OK 
 tgetent()をチェックしています。 .. configure:error:NOT FOUND!
ターミナルライブラリをインストールする必要があります。たとえば、ncurses。
または、-with-tlib。
を使用してライブラリの名前を指定します。

足りないものがあるのか​​、それとも最新バージョンのvimを入手する別の方法があるのか​​わかりません。どうもありがとう!

3
alxyzc

私はUbuntu11.04でVimを最新の状態に保つために その男のPPA を使用しています。最新バージョンは7.3.854で、YouCompleteMeで動作すると思います。

1
romainl

まったく同じ問題(YCMを使用するためにvimを再コンパイルする)があり、src/auto/config.cache(vimツリー内)を削除して./configureを再実行することで修正しました。古いconfigureキャッシュがまだ残っているようです。

1
bootleg

私はubuntu16.10を実行していますが、vim8.0をコンパイルできませんでした。問題をグーグルで検索すると、パッケージ「ncurses-dev」をインストールするように言われましたが、そのパッケージが見つかりませんでした。私はついにパッケージ「libtinfo-dev」をインストールすることでうまくいくことがわかり、vimをコンパイルすることができました。

Ubuntu(およびその他のDebianベースのdistos)では、次の方法で必要なすべての前提条件を取得できます。

$ Sudo apt-get build-dep vim-gnome

それで依存関係の問題が解決するかどうかはわかりませんが、試してみる価値はあります。

0
Ingo Karkat

これは、システムにncursesライブラリがないためです。このライブラリは、libncurses5-devをインストールすることで解決できます。

Sudo apt-get install libncurses5-dev

私はこの記事を通してそれを解決しました。 ここにリンクの説明を入力してください

0
huan meng