web-dev-qa-db-ja.com

libintl.hとは何ですか?どこで入手できますか?

ソースからgitのmake installを実行しようとすると、エラーが発生し続けます:

 make install
* new build flags or prefix
CC credential-store.o
In file included from credential-store.c:1:
In file included from ./cache.h:8:
./gettext.h:17:11: fatal error: 'libintl.h' file not found
#       include <libintl.h>
            ^
1 error generated.
make: *** [credential-store.o] Error 1

Lib.intl.hで何もGoogleの検索結果が表示されていません。このとらえどころのないライブラリとは何ですか?また、どうすればgitをインストールできるように入手できますか?

49
Adam Templeton

システムによっては、おそらくGNU Cライブラリ(glibc)の一部です。

ファイルlibintl.hをインストールするだけでは何の効果もありません。

Debianベースのシステム(Debian、Ubuntu、およびLinux Mintを含む)では、libc6-devパッケージの一部であり、次のものと共にインストールされます。

Sudo apt-get install libc6-dev

Mac OS Xを使用しているため、「libintl.h OSX」をGoogleで検索すると、多くの人が同様の問題を抱えていることがわかります。 GitソースのINSTALLファイルによると:

NO_GETTEXTを設定して、ローカリゼーションサポートを無効にし、Gitで英語のみを使用するようにします。 autoconfの下で、configureスクリプトは、システムでlibintlが見つからない場合、これを自動的に実行します。

34
Keith Thompson

OSXでEl Capitanと自家製のFWIWを使用して、

1)El Capitanのアップグレードが何かを壊したかどうか確信が持てなかったので、まず最新のgettextがあることを確認しました。

$ brew reinstall gettext

その後、私は以下を行うことで再リンクする必要がありました:

$ brew unlink gettext && brew link gettext --force

その後、他のツールがそれを見つけることができ、人生は通常に戻りました。

29
rotten

Libintlはlibgettextに由来することを学びました。 Homebrewですでにgettextをインストールしている場合、次のように表示されます:

$ locate libintl
/usr/local/Cellar/gettext/0.18.3.2/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.18.3.2/lib/libintl.a
/usr/local/Cellar/gettext/0.18.3.2/lib/libintl.dylib
<..snip..>

そして、「-lintlのライブラリが見つかりません」の問題について次のように機能します

ln -s /usr/local/Cellar/gettext/0.18.3.2/lib/libintl.* /usr/local/lib/
24
ronnefeldt

パッケージがこのファイルを探しているとき、GNU gettextパッケージをインストールまたはビルドします。このパッケージは「インストール」${prefix}/include/libintl.h、 とりわけ

7
Michael Felt

Libtoolsの適切なバージョンを見つけることができる場合( http://ftp.gnu.org/gnu/libtool/ から)、パッケージで見つけることができます。

それ以外の場合は、以下を使用して構成し、この依存関係を削除できます。

./configure --disable-nls
5
AvkashChauhan

OSX Lionに最新バージョンのgitをインストールするために、これが私がしたことです。

* gitがまだインストールされていない場合は、サイトからダウンロードして~/src/gitに展開するだけです。

また、whereis gitを実行して、既にインストールされているかどうかを確認し、プレフィックスの設定内容を確認することをお勧めします。私は/usr/bin/gitだったので、プレフィックスを/usrに設定しました

mkdir ~/src
git clone https://github.com/git/git.git
cd git
make configure
./configure --prefix=/usr
make
make install

このようにすることで、余分なライブラリをダウンロードしたり、フォーラムで回答を探したりする必要がなくなりました。 automakeのおかげで、gitはシステム用にセットアップされており、問題なく動作することを知っています。

3
blindMoe

ローカライズを気にせず、英語だけで問題ない場合は、NO_GETTEXTMakefile

Makefileから:

Git出力を翻訳したくない場合は、NO_GETTEXTを定義します。翻訳されたGitには、GNU libintlまたは別のgettext実装に加えて、実行時にlibintl-Perlが必要です。

2
manojlds

これは有望に見えます- http://code.google.com/p/rudix/downloads/detail?name=static-libintl-0.18.1.1-5.pkg&can=2&q= -libintlが含まれているようですパッケージとして。 libintlへの依存関係を解決してくれました。

2
ljs

macportをインストールし、ターミナルに入力します

Sudo port install libcxx
1
Jorge Miguel

このとらえどころのないライブラリとは何ですか?また、どうすればgitをインストールできるように入手できますか?

GNUマニュアル から:

11.21 libintl.h

Libintlは、プログラムにネイティブ言語サポートを提供するライブラリです。

マクロを定義します__USE_GNU_GETTEXT__GNU_GETTEXT_SUPPORTED_REVISION、および関数gettextdgettextdcgettextngettextdngettextdcngettexttextdomainbindtextdomainbind_textdomain_codeset

ドキュメンテーション:

Gnulibモジュール:gettext

GNU gettextがインストールされている場合、Gnulibによって修正された移植性の問題:

一部のプラットフォームでは、このヘッダーファイルがありません:Mac OS X 10.5、FreeBSD 6.0、OpenBSD 3.8、Minix 3.1.8、AIX 5.1、HP-UX 11、IRIX 6.5、OSF/1 5.1、mingw、MSVC 9、Interix 3.5、BeOS 。

これらの関数は、一部の非glibcプラットフォーム(NetBSD 3.0、Solaris 10)では、システム依存の文字列(メジャーバージョン1またはマイナーバージョン1)を含むGNU .moファイル)を処理できません。

得られる libintl.h Gnulibから GNU Portability Library 。GNUのサバンナからダウンロードできます。

Gnulib Webページ は次のようにも述べています:

Gnulibはリリースを行いません。ソースレベルで使用することを目的としています。

サバンナで現在のgnulibソースを参照できます。

Gnulibを使用するには、次のシェルコマンドを使用して、匿名のGitを介してソースコードと履歴を取得できます。

git clone git://git.savannah.gnu.org/gnulib.git

開発者は、コミットを行う目的で、非匿名Gitを介してソースコードを取得することもできます。詳細については、Gnulibの最上位READMEファイルをご覧ください。

ソースを入手したら、。/ gnulib-tool --helpを実行します。ヘルプと詳細については、以下のドキュメントと他のリソースを参照してください。

0
jww

AssaultCubeをコンパイルしようとしてこのエラーが発生した場合(「INTL/libintl.h」が欠落していると文句を言うはずです)、AssaultCubeアプリのコンテンツからINTL.frameworkを取得して/ Library/Frameworksに配置する必要があります。 MacPorts、HomeBrewなどのパッケージでは修正できません。コンパイルに失敗するオープンソースプロジェクトの数は非常に迷惑です。

0
sudo