使命は、Red Hat 派生物に rrdtool をインストールすることであり、yum またはパッケージは禁止されています。ソースからの rrdtool のすべての依存関係を別のディレクトリにコンパイルします: /apps/run/sepatare_folder
基本的に私が持っているものはすべて次のようになります:
ls
cairo glib pango pixman
--
pwd
/apps/run
4 つの依存関係をコンパイルした後、rrdtool は ./configure --prefix=/apps/run/rrdtool 中に文句を言います
コンパイラはライブラリを見つけることができません[これは禁止されているため、標準ではなく別のフォルダにコンパイルしたためです]
すべての警告は次のとおりです。
Find 3rd-Party Libraries
checking dbi/dbi.h usability... no
checking dbi/dbi.h presence... no
checking for dbi/dbi.h... no
checking tcpd.h usability... no
checking tcpd.h presence... no
checking for tcpd.h... no
checking for cairo_font_options_create in -lcairo... no
checking for pkg-config... pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no cairo-png.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of cairo-png. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libcairo and its header files. If
you have not installed cairo-png, you can get it either from its original home on
http://cairographics.org/releases/
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of cairo-png is 1.10.2.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for cairo_svg_surface_create in -lcairo... no
checking for pkg-config... (cached) pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no cairo-svg.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of cairo-svg. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libcairo and its header files. If
you have not installed cairo-svg, you can get it either from its original home on
http://cairographics.org/releases/
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of cairo-svg is 1.10.2.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for cairo_pdf_surface_create in -lcairo... no
checking for pkg-config... (cached) pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no cairo-pdf.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of cairo-pdf. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libcairo and its header files. If
you have not installed cairo-pdf, you can get it either from its original home on
http://cairographics.org/releases/
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of cairo-pdf is 1.10.2.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for cairo_ps_surface_create in -lcairo... no
checking for pkg-config... (cached) pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no cairo-ps.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of cairo-ps. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libcairo and its header files. If
you have not installed cairo-ps, you can get it either from its original home on
http://cairographics.org/releases/
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of cairo-ps is 1.10.2.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for pango_cairo_context_set_font_options in -lpangocairo-1.0... no
checking for pkg-config... (cached) pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no pangocairo.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of pangocairo. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libpangocairo-1.0 and its header files. If
you have not installed pangocairo, you can get it either from its original home on
http://ftp.gnome.org/pub/GNOME/sources/pango/1.28
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of pangocairo is 1.28.4.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for glib_check_version in -lglib-2.0... no
checking for pkg-config... (cached) pkg-config
configure: WARNING:
----------------------------------------------------------------------------
* I found a copy of pkgconfig, but there is no glib-2.0.pc file around.
You may want to set the PKG_CONFIG_PATH variable to point to its
location.
----------------------------------------------------------------------------
configure: WARNING:
----------------------------------------------------------------------------
* I could not find a working copy of **glib-2.0**. Check config.log for hints on why
this is the case. Maybe you need to set LDFLAGS and CPPFLAGS appropriately
so that compiler and the linker can find libglib-2.0 and its header files. If
you have not installed glib-2.0, you can get it either from its original home on
ftp://ftp.gtk.org/pub/glib/2.28/
You can find also find an archive copy on
http://oss.oetiker.ch/rrdtool/pub/libs
The last tested version of glib-2.0 is 2.28.7.
LIBS=-lm
LDFLAGS=
CPPFLAGS=
----------------------------------------------------------------------------
checking for xmlParseFile in -lxml2... yes
checking libxml/parser.h usability... yes
checking libxml/parser.h presence... yes
checking for libxml/parser.h... yes
configure: error: Please fix the library issues listed above and try again.
不足しているライブラリはすべてありますが、それらを見つける方法をコンパイラに伝える必要があるのは大きな苦痛です。たとえば、欠落しているglib-2.0 は次のとおりです。
pwd
/apps/run/glib/lib
ls -la
total 2300
drwxr-xr-x 4 root root 4096 May 3 08:18 .
drwxr-xr-x 6 root root 4096 May 3 08:17 ..
drwxr-xr-x 3 root root 4096 May 3 08:17 glib-2.0
-rwxr-xr-x 1 root root 928 May 3 08:18 libgio-2.0.la
lrwxrwxrwx 1 root root 19 May 3 08:18 libgio-2.0.so -> libgio-2.0.so.0.0.0
lrwxrwxrwx 1 root root 19 May 3 08:18 libgio-2.0.so.0 -> libgio-2.0.so.0.0.0
-rwxr-xr-x 1 root root 712052 May 3 08:18 libgio-2.0.so.0.0.0
-rwxr-xr-x 1 root root 830 May 3 08:17 libglib-2.0.la
lrwxrwxrwx 1 root root 23 May 3 08:17 libglib-2.0.so -> libglib-2.0.so.0.1504.0
lrwxrwxrwx 1 root root 23 May 3 08:17 libglib-2.0.so.0 -> libglib-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 1168721 May 3 08:17 libglib-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 887 May 3 08:18 libgmodule-2.0.la
lrwxrwxrwx 1 root root 26 May 3 08:18 libgmodule-2.0.so -> libgmodule-2.0.so.0.1504.0
lrwxrwxrwx 1 root root 26 May 3 08:18 libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 16107 May 3 08:18 libgmodule-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 882 May 3 08:18 libgobject-2.0.la
lrwxrwxrwx 1 root root 26 May 3 08:18 libgobject-2.0.so -> libgobject-2.0.so.0.1504.0
lrwxrwxrwx 1 root root 26 May 3 08:18 libgobject-2.0.so.0 -> libgobject-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 378273 May 3 08:18 libgobject-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 897 May 3 08:18 libgthread-2.0.la
lrwxrwxrwx 1 root root 26 May 3 08:18 libgthread-2.0.so -> libgthread-2.0.so.0.1504.0
lrwxrwxrwx 1 root root 26 May 3 08:18 libgthread-2.0.so.0 -> libgthread-2.0.so.0.1504.0
-rwxr-xr-x 1 root root 24126 May 3 08:18 libgthread-2.0.so.0.1504.0
drwxr-xr-x 2 root root 4096 May 3 08:17 pkgconfig
素敵なアドバイスがありますが、残念ながら私はそれらを理解できません:
- その場所を指すように PKG_CONFIG_PATH 変数を設定することができます。
- コンパイラとリンカーが libglib-2.0 とそのヘッダー ファイルを見つけられるように、LDFLAGS と CPPFLAGS を適切に設定する必要があるかもしれません。
複数の必要なライブラリ [たとえば、glib-2.0.pc、cairo-ps、cairo-png、..] が見つかるディレクトリを含むようにPKG_CONFIG_PATHを設定するスキルがありません。次のようなことを試しました:
export LD_LIBRARY_PATH=/apps/run/glib/lib;export LD_LIBRARY_PATH=/apps/run//apps/run/cairo/lib
しかし、機能していません。また、 LDFLAGSとCPPFLAGSを適切に設定するためのアドバイスがあるため、これで十分かどうかもわかりません。これを試しました:
export LDFLAGS='-L/apps/run/cairo/libs'
しかし、それは正しくないようです。または、LDFLAGS と CPPFLAGS を ./configure の一部として指定する必要がありますか? 構文はどうあるべきですか?一般的なハウツーを探していますが、私の環境には適合しません。アドバイスをお願いします。どうも