RockMongo,“无法加载动态库'/.../mongo.so' - 错误的ELF类:ELFCLASS64 in Unknown”

时间:2011-09-20 19:44:23

标签: apache mongodb lampp

我刚刚通过将所有文件解压缩到lampp网络文件夹/opt/lampp/htdocs/rockMongo/来安装RockMongo。访问index.php显示

  

为了使事情正确,你必须安装php_mongo模块。 Here for installation documents on PHP.net

我按照那里的说明(我必须安装php-pear):

  
      
  • sudo pecl install mongo
  •   
  • 将以下行添加到php.ini:extension = mongo.so
  •   

现在,当我启动Web服务器(apache)时,我收到以下警告,重复数百次次:

  

警告:PHP启动:依赖系统的时区是不安全的   设置。您必需使用date.timezone设置或   date_default_timezone_set()函数。如果您使用其中任何一个   方法,你最有可能仍然得到这个警告   拼写错误的时区标识符。我们选择了“America / New_York”   'EDT / -4.0 / DST'代替第0行的未知

还有一次这个警告:

  

警告:PHP启动:无法加载动态库   '/usr/lib/php5/20090626/mongo.so' - /usr/lib/php5/20090626/mongo.so:   错误的ELF类:第0行的未知ELFCLASS64

索引页面仍然显示相同的消息(这意味着class_exists("Mongo")返回false)

我尝试了mongo.so的绝对路径,但这没有做任何事情。发生了什么事?

编辑我用过

$ file /usr/bin/php5
/usr/bin/php5: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

这似乎表明我的php安装是64位,但是当我打印出PHP_INT_MAX时,我得到2147483647这似乎表明我的安装是32位。我怎么知道我的php安装的“位数”?

1 个答案:

答案 0 :(得分:0)

从第二个PHP警告来看,您看起来已经混合了32位代码和64位库。

确保您下载的所有内容与PHP安装具有相同的“位数”。