服务器 频道

编译Apache时常见的两个小问题

  【IT168 服务器学院】问题1:
  在一些基于glibc的linux系统上编译Apache 1.2.x的时候,提示crypt功能错误怎么办?

  解决:
  由于glibc把cyrpt功能放在单独一个库文件里面,你需要修改源码或者设置配置选项EXTRA_LIBS=-lcrypt。
   
   
  问题2:
  编译Apache的时候出现“undefined reference to “__inet_ntoa” or other __inet_* symbols”怎么办

  问题分析:
  如果你用源码包安装过BIND8,那么这个问题应该是由于头文件和库文件的冲突。源码安装的BIND8缺省把它的头文件和库文件安装在/usr/local/include和/usr/local/lib下面,但是你系统带的BIND8的文件却是安装在/usr/include和/usr/lib下面,如果你的系统先用了/usr/local/include而不是/usr/include里面的头文件,同时你的系统的BIND8库文件版本比较低,那么就会发生冲突。

  解决:
  编译的时候加入以下参数:
  EXTRA_LDFLAGS=-lbind
  注意:如果是BIND8.1.1的话,缺省的头文件和库文件都是放在/usr/local/bind下面,所以不会出现这个问题,不过为了更好地使用,最好编译的时候加入以下参数:
  EXTRA_CFLAGS=-I/usr/local/bind/include
  EXTRA_LDFLAGS=-L/usr/local/bind/lib
  EXTRA_LIBS=-lbind
   
   
  

0
相关文章