我想做一些在任何包管理器中都应该很简单的事情,安装一个包,在我的例子中就是这样lib64MLIRVectorToSPIRV13
。
LC_ALL=C dnf install lib64MLIRVectorToSPIRV13
问题是yum
安装了依赖项,并且无法卸载它,因为它应该是来自系统,而我正在使用 dnf。
我无法运行 yum,因为它缺少加密符号(并且我无法将其迁移到 Python 3),所以我所做的只是从 到 建立一个符号dnf
链接yum
。
撇开这个主题不谈,我想要的是能够覆盖、更改、删除或重新安装干扰的软件包,以便安装lib64MLIRVectorToSPIRV13
是的,我可以一一安装所有软件包,尽管使用软件包管理器会更好,除非互联网上有一个软件包包含所有LLVM 13。
但我收到这个错误...
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction test error:
file /lib64/libstdc++.so.6 from install of lib64stdc++6-11.2.0-2.x86_64 conflicts with file from package libstdc++-4.8.5-44.el7.x86_64
file /usr/lib64/libncursesw.so.6 conflicts between attempted installs of lib64ncursesw6-6.3-1.20211219.2.x86_64 and lib64ncursesw6-6.3-1.20211219.2.x86_64
我的操作系统的历史
我使用的是在Garbarino购物时购买的 2006 年 Commodore 。
CPU~Dual core Pentium E5700 (-MCP-) speed/max~2611/2965 MHz Kernel~5.7.2-lxpup64 x86_64 Up~7:52 Mem~1167.9/1990.8MB HDD~95.6GB(73.6% used) Procs~155 Client~Shell inxi~2.3.8
我使用的系统是LxPupSc64 20.06,即PuppyLinux,又基于WOFF和 Slackware ,进行了修改,使其可以支持各种包管理器。
我如何安装另一个包管理器?我设法安装包管理器的方法是从pkgs.org页面下载每个缺少的包。
我能够安装的包管理器是ArchLinux的 pacman ,然后由于系统更新导致Nouveau驱动程序不再启动,我安装了另一个包管理器,即 dnf 。
我无法安装apt-get或snapd或任何使用systemd 的软件包,因为PuppyLinux也可以在没有sudo
.
日志:
Last metadata expiration check: 0:05:38 ago on Mon Mar 25 06:52:00 2024.
Dependencies resolved.
=========================================================================================================
Package Arch Version Repository Size
=========================================================================================================
Installing:
lib64MLIRVectorToSPIRV13 x86_64 13.0.0-1 release 33 k
Installing dependencies:
cross-aarch64-openmandriva-linux-gnu-libc x86_64 6:2.34-6 release 62 M
lib64LLVMDemangle13 x86_64 13.0.0-1 release 110 k
lib64LLVMSupport13 x86_64 13.0.0-1 release 806 k
lib64MLIRAffine13 x86_64 13.0.0-1 release 162 k
lib64MLIRAnalysis13 x86_64 13.0.0-1 release 84 k
lib64MLIRCallInterfaces13 x86_64 13.0.0-1 release 10 k
lib64MLIRControlFlowInterfaces13 x86_64 13.0.0-1 release 18 k
lib64MLIRDataLayoutInterfaces13 x86_64 13.0.0-1 release 28 k
lib64MLIRDialectUtils13 x86_64 13.0.0-1 release 26 k
lib64MLIRIR13 x86_64 13.0.0-1 release 483 k
lib64MLIRInferTypeOpInterface13 x86_64 13.0.0-1 release 15 k
lib64MLIRLinalg13 x86_64 13.0.0-1 release 701 k
lib64MLIRLoopAnalysis13 x86_64 13.0.0-1 release 139 k
lib64MLIRMath13 x86_64 13.0.0-1 release 47 k
lib64MLIRMemRef13 x86_64 13.0.0-1 release 192 k
lib64MLIRMemRefUtils13 x86_64 13.0.0-1 release 12 k
lib64MLIRPDL13 x86_64 13.0.0-1 release 90 k
lib64MLIRPDLInterp13 x86_64 13.0.0-1 release 118 k
lib64MLIRPDLToPDLInterp13 x86_64 13.0.0-1 release 90 k
lib64MLIRParser13 x86_64 13.0.0-1 release 115 k
lib64MLIRPass13 x86_64 13.0.0-1 release 102 k
lib64MLIRPresburger13 x86_64 13.0.0-1 release 34 k
lib64MLIRRewrite13 x86_64 13.0.0-1 release 122 k
lib64MLIRSCF13 x86_64 13.0.0-1 release 113 k
lib64MLIRSPIRV13 x86_64 13.0.0-1 release 698 k
lib64MLIRSPIRVConversion13 x86_64 13.0.0-1 release 43 k
lib64MLIRSideEffectInterfaces13 x86_64 13.0.0-1 release 13 k
lib64MLIRStandard13 x86_64 13.0.0-1 release 237 k
lib64MLIRSupport13 x86_64 13.0.0-1 release 56 k
lib64MLIRTensor13 x86_64 13.0.0-1 release 109 k
lib64MLIRTransformUtils13 x86_64 13.0.0-1 release 231 k
lib64MLIRVector13 x86_64 13.0.0-1 release 353 k
lib64MLIRVectorInterfaces13 x86_64 13.0.0-1 release 11 k
lib64MLIRViewLikeInterface13 x86_64 13.0.0-1 release 18 k
lib64ncursesw6 x86_64 6.3-1.20211219.2 release 173 k
lib64stdc++6 x86_64 11.2.0-2 release 647 k
Installing weak dependencies:
cross-aarch64-openmandriva-linux-gnu-binutils x86_64 2.37-1 release 2.7 M
cross-aarch64-openmandriva-linux-gnu-gcc x86_64 11.2.0-2 release 86 M
Transaction Summary
=========================================================================================================
Install 39 Packages
Total size: 157 M
Installed size: 1.5 G
Is this ok [y/N]: y
Downloading Packages:
[SKIPPED] cross-aarch64-openmandriva-linux-gnu-binutils-2.37-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] cross-aarch64-openmandriva-linux-gnu-gcc-11.2.0-2-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] cross-aarch64-openmandriva-linux-gnu-libc-2.34-6-omv4003.x86_64.rpm: Already downloaded
[SKIPPED] lib64LLVMDemangle13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64LLVMSupport13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRAffine13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRAnalysis13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRCallInterfaces13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRControlFlowInterfaces13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRDataLayoutInterfaces13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRDialectUtils13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRIR13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRInferTypeOpInterface13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRLinalg13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRLoopAnalysis13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRMath13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRMemRef13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRMemRefUtils13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRPDL13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRPDLInterp13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRPDLToPDLInterp13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRParser13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRPass13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRPresburger13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRRewrite13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRSCF13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRSPIRV13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRSPIRVConversion13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRSideEffectInterfaces13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRStandard13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRSupport13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRTensor13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRTransformUtils13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRVector13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRVectorInterfaces13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRVectorToSPIRV13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64MLIRViewLikeInterface13-13.0.0-1-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64ncursesw6-6.3-1.20211219.2-omv4050.x86_64.rpm: Already downloaded
[SKIPPED] lib64stdc++6-11.2.0-2-omv4050.x86_64.rpm: Already downloaded
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction test error:
file /lib64/libstdc++.so.6 from install of lib64stdc++6-11.2.0-2.x86_64 conflicts with file from package libstdc++-4.8.5-44.el7.x86_64
file /usr/lib64/libncursesw.so.6 conflicts between attempted installs of lib64ncursesw6-6.3-1.20211219.2.x86_64 and lib64ncursesw6-6.3-1.20211219.2.x86_64
我的印象是这里涉及许多误解或误解。我认为尝试解决软件包安装问题没有用,但我会尝试解决这些误解。
首先,虽然 Puppy Linux 似乎被设计为支持从各种系统安装软件包,但它是使用自己的软件包管理器来实现的。作为一般规则,每个发行版的包管理器都是该发行版的核心部分,并且您不能安装多个包管理器来管理同一系统。
即使发行版使用相同的包格式和包管理工具,您也不能混合使用它们的包;例如,Ubuntu 软件包可以在 Ubuntu 上运行,虽然有些软件包也可以在 Debian 上运行,但将 Ubuntu 软件包添加到 Debian 系统可能会在某些时候导致失败。
第二个就是
apt-get
和co依赖的sudo
还是systemd。apt-get
是一个工具;使用它的发行版最终所做的是发行版的选择,而不是apt-get
。apt-get
无论是否通过,以 root 身份运行时都可以正常工作sudo
;由于您似乎有管理/lib64
和中文件的包/usr/lib64
,我想您正在以 root 身份运行包管理器。apt-get
也不依赖于systemd;Devuan 使用apt-get
和不使用 systemd。我知道您想避免使用 systemd,因为您已将其与过去遇到的硬盘驱动器错误相关联。两者有关联的可能性极小。
由于您的最终目标似乎是在您的系统上运行 warzone2100,因此我建议您从一个包含 warzone2100 软件包的发行版开始。您可以查看Repology 上的相关页面来查找这些发行版;请注意,有些是整个发行版。Debian 应该可以在您的系统上正常工作,或许可以使用比默认 GNOME 更轻量级的桌面环境;您可以在安装过程中选择桌面环境。如果你真的想避免 systemd,可以尝试 Devuan,它也有 warzone2100。
我能够删除 的保护
yum
。我现在不记得删除了哪个文件,但它说了一些有关protected 的内容。该文件位于以下文件夹的子文件夹中。
当我能够解除保护时,我删除了干扰的软件包,之后整个系统就被毁了,变得无法使用。
幸运的是,我已经在 Puppy Linux 中对系统进行了相当更新的会话......
现在我只使用 pacman 而不是 dnf,但是如果更新系统时 LLVM 再次失败,我将不得不再次安装 dnf,或者可能会在 LLVM 存储库中报告错误。