gpt4 book ai didi

compilation - 如何在 OpenShift 上编译和安装源代码?

转载 作者:行者123 更新时间:2023-12-01 22:54:49 25 4
gpt4 key购买 nike

我正在尝试在 OpenShift 上在线安装“whois”,由于权限问题,我无法使用 yum 安装

\> yum install whois
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed

我不知道安装软件包的任何替代方法,因此考虑编译源代码。

make 可用。

\> make -version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for x86_64-redhat-linux-gnu

那么如何在 OpenShift 上通过 SSH 编译源代码?非常感谢!

编辑:我可以制作该软件包,但无法安装该软件包。

更新:添加环境变量和相关数据。

$PATH

[app-domain.rhcloud.com whois-5.2.7]\> echo $PATH
/var/lib/openshift/{{ directory_hash }}/python//virtenv/bin:/var/lib/openshift/{{ directory_hash }}/python//bin:/opt/rh/python27/root/usr/bin:/bin:/usr/bin:/usr/sbin

安装

[app-domain.rhcloud.com whois-5.2.7]\> which install
/var/lib/openshift/{{ directory_hash }}/python/bin/install

make install期间出现错误消息

[app-domain.rhcloud.com whois-5.2.7]\> make install BASEDIR=./destdir/
install -d ./destdir//usr/bin/
/var/lib/openshift/{{ directory_hash }}/python//bin/install: line 10: version: unbound variable
make: *** [install-whois] Error 1

make/path/to/install期间出现错误消息

[app-domain.rhcloud.com whois-5.2.7]\> make /var/lib/openshift/{{ directory_hash }}/python/bin/install BASEDIR=./destdir/
make: Nothing to be done for `/var/lib/openshift/{{ directory_hash }}/python/bin/install'.

最佳答案

更新:您发布的环境 $PATH 变量表明系统的 install 命令可能被 pythoninstall 命令取代。这就是尝试安装二进制文件时 make 命令失败的原因。

您有两种解决方案。

  • 暂时从 $PATH 变量中删除 python 路径。下次登录OpenShift时将恢复为原始值:

    导出 PATH=/bin:/usr/bin:/usr/sbin

  • 编辑Makefilepo/Makefile文件并将install命令的固定路径设置为/usr/bin/安装。两个 Makefile 中的行:

    INSTALL=安装

    应阅读:

    安装 =/usr/bin/install

<小时/>

要解决安装到 /usr 时的权限问题,您必须将 whois 安装到自定义目录。此示例将其安装到 destdir 子目录。

$ wget http://ftp.debian.org/debian/pool/main/w/whois/whois_5.2.7.tar.xz
$ tar xf whois_5.2.7.tar.xz
$ cd whois-5.2.7/
$ mkdir destdir
$ make
$ make install BASEDIR=./destdir/
$ ./destdir/usr/bin/whois --version
Version 5.2.7.

Report bugs to <md+whois@linux.it>.

关于compilation - 如何在 OpenShift 上编译和安装源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30080713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com