apt-get安装php-db等效的FreeBSD

时间:2017-08-22 08:16:40

标签: php pear freebsd freeradius

我试图让daloradius https://github.com/lirantal/daloradius使用php 5.6在FreeBSD中运行。当我尝试登录时,我收到此错误:

致命错误:Class' DB'在第86行的/.../library/opendb.php中找不到

试过以下但没有工作:

window.Hello = {
  world: function() {
    console.log("Hello World!");
  }
}

window.Hello.world();

现在在我的linux机箱上,我最初遇到了这个错误,但是当我运行以下内容时它起作用了:

pkg install php-dba
pear install DB
pear install MDB2

在FreeBSD中,这不起作用。谁能告诉我与FreeBSD相当的这个?或者有没有人能够让daloRadius在FreeBSD上工作?非常感谢你。

PS我也尝试将包含代码指向DB.php (/ usr /....../ pear / DB.php)的绝对位置,它没有'工作。

4 个答案:

答案 0 :(得分:2)

如果我是对的,DBA不在默认pkg php56-extensions中,但你可以做的是从源代码安装并选择所需的扩展名,为此:

# portsnap fetch extract

然后:

# cd /usr/ports/lang/php56-extensions
# make config <--- select [x] DBA dba support
# make install

这将安装DBA扩展,有关使用端口的更多信息,请访问:https://www.freebsd.org/doc/handbook/ports-using.html

答案 1 :(得分:1)

lang/php56-extensions是一个元数据包,只根据配置引入其他依赖项。因此,您可以只安装databases/php56-dba

,而不是安装所有默认扩展程序

没有必要编译它,pkg install php56-dba也会这样做。

答案 2 :(得分:1)

我认为你想要的是梨DB库。在FreeBSD上,pear包有一个pear-前缀而不是php -

尝试:

# pkg install pear-DB

答案 3 :(得分:0)

使用pkg是正确的。但是你必须使用正确的包名。今天FreeBSD上的php-dba包的名称取决于你喜欢的PHP版本:

  • php56-dba
  • php70-dba
  • php71-dba

对于您列出的梨包,包名分别为pear-DBpear-MDB2。两者都默认使用PHP-5.6构建,但是,如果您想为您使用预构建版本,则需要使用PHP-5.6(和php56-dba )。

但是看起来,你已经安装了所有相关的软件包 - 你的问题是针对特定的应用程序(daloradus?)。因此,你的问题既不是关于FreeBSD也不是安装包,你应该编辑它的标题和标签以匹配。