在没有 root 权限的情况下使用 CentOS 7 在远程服务器上安装存储库的问题

在没有 root 权限的情况下使用 CentOS 7 在远程服务器上安装存储库的问题

我正在尝试安装芯片厂使用 cshrc 的远程系统上的工具链。我通过 ssh 连接到它。

所有必需的依赖项均已安装在系统上。我用rpm -q命令检查了它们。所以我跳过安装它们。

我也完成了设置阶段(即 ./scripts/init-submodules-no-riscv-tools.sh 成功 - 在 env.sh 文件上生成了预期的输出)

我的问题是在构建工具链时出现错误:

在此输入图像描述

我还记录了完整的构建过程及其这里

我的问题是我是否需要再次安装依赖项(或更新它们)以消除错误?如果是这样,你能指导我怎么做吗,因为我不是 sudo。

我问了管理员,但他们回答说管理员只负责高级的东西。

我对linux不太有经验。任何指导将不胜感激。

编辑

Installing toolchain to /local/data0/AS/chipyard/riscv-tools-install
=>  Starting riscv-gnu-toolchain build
==>  Initializing riscv-gnu-toolchain submodule
==>  Removing existing riscv-gnu-toolchain/build directory
==>  Configuring riscv-gnu-toolchain
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for grep that handles long lines and -e... /bin/grep
checking for fgrep... /bin/grep -F
checking for grep that handles long lines and -e... (cached) /bin/grep
checking for bash... /bin/sh
checking for __gmpz_init in -lgmp... yes
checking for mpfr_init in -lmpfr... yes
checking for mpc_init2 in -lmpc... yes
checking for curl... /bin/curl
checking for wget... /bin/wget
checking for ftp... /bin/ftp
configure: creating ./config.status
config.status: creating Makefile
config.status: creating scripts/wrapper/awk/awk
config.status: creating scripts/wrapper/sed/sed
==>  Building riscv-gnu-toolchain
mkdir -p /local/data0/AS/chipyard/riscv-tools-install/.test || \
    (echo "Sorry, you don't have permission to write to" \
     "'/local/data0/AS/chipyard/riscv-tools-install', use --prefix to specify" \
     "another path, or use 'sudo make' if you *REALLY* want to" \
     "install into '/local/data0/AS/chipyard/riscv-tools-install'" && exit 1)
rm -rf stamps/build-gdb-newlib build-gdb-newlib
mkdir build-gdb-newlib
rm -r /local/data0/AS/chipyard/riscv-tools-install/.test
cd build-gdb-newlib && CC_FOR_TARGET=riscv64-unknown-elf-gcc /local/data0/AS/chipyard/toolchains/riscv-tools/riscv-gnu-toolchain/build/../riscv-gdb/configure \
    --target=riscv64-unknown-elf \
     \
    --prefix=/local/data0/AS/chipyard/riscv-tools-install \
     \
    --disable-werror \
    --with-expat=yes  \
    --enable-gdb \
    --disable-gas \
    --disable-binutils \
    --disable-ld \
    --disable-gold \
    --disable-gprof
mkdir -p stamps/ && touch stamps/check-write-permission

我在“chipyard/toolchains/riscv-tools/riscv-gnu-toolchain”中运行了 ./configure 命令。我传递了当前路径和路径“local/data0/AS/chipyard/riscv-tools-install”并为每个路径构建了工具链,但仍然遇到相同的权限错误。你能告诉我我哪里做错了吗?

-虽然生成的 config.log 文件中有一些错误消息:configure:2185: gcc -V >&5 gcc: error: unrecognized command line option '-V' gcc: fatal error: no input files 我不知道这是否重要,尽管

答案1

mkdir -p /local/data0/AS/chipyard/riscv-tools-install/.test ||
(echo "抱歉,您没有权限写入"
"'/local/data0/AS/chipyard/riscv-tools-install',使用 --prefix 指定"
"另一个路径,或者使用 'sudo make'如果你真的想要“
”安装到 '/local/data0/AS/chipyard/riscv-tools-install'" && 退出 1)

你不被允许写入 /local....它甚至给你一个如何规避它的提示(通过使用sudo make或使用--prefix标志)

但我不认为 /local 目录存在...这会导致相同的消息。因此,您可以使用键“--prefix”,它将现有路径作为参数:

./configure --prefix /path/to/the/location/that/exists.. 

您可能会考虑在构建代码之前熟悉“make”。

相关内容