我正在尝试在适用于 Linux 的 Windows 子系统上安装工具链,但出现以下错误:
libtool: link: only absolute run-paths are allowed
make[3]: *** [Makefile:928: libbfd.la] Error 1
make[2]: *** [Makefile:942: all-recursive] Error 1
make[1]: *** [Makefile:1088: all-recursive-am] Error 2
make: *** [Makefile:1644: all-bfd] Error 2
../scripts/001-binutils-2.14.sh: Failed.
我真的不知道如何解决这些问题(我尝试搜索正确的 makefile,但惨遭失败……)。
即使在全新安装 WSL 的不同计算机上,每次都会发生这种情况:我该如何解决?
尝试sudo apt-get -y install texinfo bison flex
如果这解决了您的问题,则可能应该先检查此依赖关系。
谢谢你帮助我。
我尝试安装 bison 和 flex(已经安装了 texinfo),但遗憾的是没有任何改变:我得到了和以前一样的错误(我有一些不太严重的警告)。
难道是我错过了一些其他的依赖?
就是想? 如果有什么不同,我们应该确保我们拥有这些依赖项的哪些版本( ? --version
)?
@SignalSpectre似乎您在某些路径中有一些空格或特殊字符。 这可以是您的 PATH(例如您的用户名)、PS2DEV 或类似的东西。 请确保您的 Windows 用户名仅包含没有空格的拉丁字符,并且您没有将 PS2DEV 路径更改为包含空格或非拉丁字符的内容,并且 WSL 用户名也只有拉丁文,并且您的 PC 名称也只有拉丁文.
我的 Windows 和 WSL 用户名都只使用没有空格的拉丁字符,PS2DEV 路径也是如此。
最后,我设法以 root 身份使用 ps2dev 脚本安装了工具链(以及开发环境的其他组件),这可能是权限问题吗? (我知道似乎并非如此,但我确定我在 PS2DEV 路径和用户名中都没有空格或非拉丁字符)。
@SignalSpectre看起来像是权限问题,我只是以为您已经尝试以 root 身份安装它。 我在自述文件中添加了一个可能的解决方案:
export PS2DEV=/usr/local/ps2dev
sudo mkdir -p $PS2DEV
sudo chown -R $USER: $PS2DEV
也有可能git clone
是使用 root 权限创建的,或者任何中间命令意外地是使用 root 创建的。 在这种情况下,很难找到“根”在哪里。 如果您希望可以使用提供的解决方案以用户权限完全重新安装 PS2DEV。
@rickgaiser @fjtrujy @SignalSpectre这个问题可以关闭 - 它是由于权限被拒绝问题而产生的,现在在自述文件中介绍。
感谢您跟进此@AKuHAK
最有用的评论
@rickgaiser @fjtrujy @SignalSpectre这个问题可以关闭 - 它是由于权限被拒绝问题而产生的,现在在自述文件中介绍。