Ubuntu |变异效应预测器 | DBD mysql 设置失败
Posted
技术标签:
【中文标题】Ubuntu |变异效应预测器 | DBD mysql 设置失败【英文标题】:Ubuntu | Variant Effect Predictor | DBD mysql failing to setup 【发布时间】:2021-09-21 21:22:33 【问题描述】:我正在使用 Ubuntu 并尝试在命令行上设置 Variant Effect Predictor (VEP)。我正在按照设置教程进行操作,但在依赖项方面遇到了一些错误。我对命令行也很陌生,所以如果有人也能够分解解决方案,我将不胜感激。谢谢!
教程:https://www.ensembl.org/info/docs/tools/vep/script/vep_tutorial.html
VEP 要求:http://www.ensembl.org/info/docs/tools/vep/script/vep_download.html#requirements
我也有 Perl v5.32.1。
我做了什么:
我使用以下命令安装了依赖项(列在需求页面中):
- sudo -s cpanm DBI
- sudo -s cpanm Archive::Zip
- sudo -s cpanm DBD::mysql
对于DBD:mysql
,我收到以下消息:
--> Working on DBD::mysql
Fetching http://www.cpan.org/authors/id/D/DV/DVEEDEN/DBD-mysql-4.050.tar.gz ... OK
Configuring DBD-mysql-4.050 ... N/A
! Configure failed for DBD-mysql-4.050. See /root/.cpanm/work/1626111140.5937/build.log for details.
无论如何尝试一下,我运行perl INSTALL.pl
(来自教程页面)并收到以下消息。如果可能的话,我也希望 VEP 以在线模式运行。
`WARNING: DBD::mysql module not found. VEP can only run in offline (--offline) mode without DBD::mysql installed
http://www.ensembl.org/info/docs/tools/vep/script/vep_download.html#requirements
Hello! This installer is configured to install v104 of the Ensembl API for use by the VEP.
It will not affect any existing installations of the Ensembl API that you may have.
It will also download and install cache files from Ensembl's FTP server.
Checking for installed versions of the Ensembl API...done
Setting up directories
Destination directory ./Bio already exists.
Do you want to overwrite it (if updating VEP this is probably OK) (y/n)? y
- fetching BioPerl
- unpacking ./Bio/tmp/release-1-6-924.zip
ERROR: Unable to unpack file ./Bio/tmp/release-1-6-924.zip without Archive::Extract or tar/unzip/gzip`
【问题讨论】:
您没有显示发生了什么错误。最佳猜测:DBD::mysql 安装失败,因为它找不到 mysql 库包括头文件(包 libmysqlclient 和 libmysqlclient-dev?) 至于第二个问题,看来你可能还需要安装Archive::Extract @ikegami,很抱歉回复晚了,但感谢您的帮助。我需要先安装 libmysqlclient 和 libmysqlclient-dev。 【参考方案1】:你告诉我们这个错误:
为 DBD-mysql-4.050 配置失败。有关详细信息,请参阅 /root/.cpanm/work/1626111140.5937/build.log。
因此,查看那里将为您提供有关问题所在的更多线索。没有它,我们只能猜测。
但我们可以做出有根据的猜测。 DBD::mysql 发行版附带一个名为DBD::mysql::INSTALL 的文件,它将告诉您安装此模块时会发现的一些问题。
重要的是要注意 DBD::mysql 是 MySQL 客户端库的包装器。它们是用 C 编写的,因此您需要安装 C 编译器才能构建 DBD::mysql。您还需要客户端库和客户端库的开发版本(用于编译模块所需的 C 头文件)。在 Ubuntu 上,这些包称为“libmysqlclient”和“libmysqlclient-dev”。如果您没有 C 编译器,那么您也需要安装“gcc”。
但这一切都变得有点复杂了。还有另一种更简单的方法。如果您使用的是 Perl 的系统版本(作为操作系统的一部分安装的版本,并且可能位于 /usr/bin/perl
中),那么我建议您使用该软件包的预构建 Ubuntu 版本,您可以安装它通过运行:
$ sudo apt-get install libdbd-mysql-perl
安装该版本使用操作系统自己的包管理器,包管理器知道需要哪些其他包才能使其工作 - 因此它也会安装这些包。
人们可能会抱怨您最好从 CPAN 安装模块,因为它为您提供了更大的灵活性,并允许您使用比操作系统存储库中的版本更多的最新软件包。他们是对的。但是,老实说,如果您是一个非 Perl 程序员,只想让应用程序启动并运行,那么这是迄今为止最简单的方法。
(但是,正如我上面所说,这都是猜测,因为您没有与我们分享最重要的错误。)
【讨论】:
Re "人们可能会抱怨你最好从 CPAN 安装模块",恰恰相反。对于系统 Perl,最好使用系统包管理器。如果要使用cpan
,最好安装自己的perl
以上是关于Ubuntu |变异效应预测器 | DBD mysql 设置失败的主要内容,如果未能解决你的问题,请参考以下文章