Centos

在 centos 上安裝 mon linux monitor - 雖然存在但找不到 glib.h

  • May 31, 2011

我正在嘗試在 Centos 5.5 下安裝 linux_monitor 軟體包。當我嘗試 make 我得到:

make[3]: Entering directory `/tmp/linux_monitor-2.0RC3/src/server'
if gcc -DHAVE_CONFIG_H -I. -I. -I../../src   -I/usr/include/openssl  -g -O2 -Wall -MT linux_mond.o -MD -MP -MF ".deps/linux_mond.Tpo" \
     -c -o linux_mond.o `test -f 'linux_mond.c' || echo './'`linux_mond.c; \
   then mv -f ".deps/linux_mond.Tpo" ".deps/linux_mond.Po"; \
   else rm -f ".deps/linux_mond.Tpo"; exit 1; \
   fi
In file included from linux_mond.c:23:
linux_mond.h:40:18: error: glib.h: No such file or directory
linux_mond.c: In function ‘server’:
linux_mond.c:155: warning: pointer targets in passing argument 3 of ‘accept’ differ in signedness
linux_mond.c: In function ‘client’:
linux_mond.c:334: warning: pointer targets in passing argument 1 of ‘strlen’ differ in signedness

我知道它沒有找到 glib.h,對嗎?我知道它存在於 /usr/include/glib-1.2/,但我嘗試了幾個配置標誌並查看了不同的文件,但找不到如何讓知道配置該庫的位置。

如果你知道它在裡面,/usr/include/glib-1.2那麼你應該能夠-I/usr/include/glib-1.2在你的 Makefile 中添加到“INCLUDE”定義中。我沒有包或它的來源,所以我不能比這更模糊。

編輯

我剛剛下載了你上面指出的包。轉到src/server並添加-I/usr/include/glib-1.2到該行DEFAULT_INCLUDES =-I. -I$(srcdir) -I$(top_builddir)/src

DEFAULT_INCLUDES =-I. -I$(srcdir) -I$(top_builddir)/src -I/usr/include/glib-1.2

如果你看那條線的正下方,你會看到

COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
         $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)

這是我在下面的評論中提到的那一行。

編輯編輯

或者更好

./configure --with-cpp-flags=-I/usr/include/glib-1.2

引用自:https://unix.stackexchange.com/questions/13919