... at least according to IRIX. Working with my O2, which I haven't used since I got an Octane, which also fell into disuse since I got a Fuel. But working with this O2 i ran into an issue installed sgug-rse RPM packages on a fresh install of IRIX 6.5.30 using booterizer.... for some reason all the RPM packages from sgug-rse were not the right arch for my O2? What gives?
RPM Madness
Problem:
[sgugshell dillera@o2 RPMS]$ sudo rpm --reinstall -ivh noarch/*.rpm mips/*.rpm
Verifying... ################################# [100%]
Preparing... ################################# [100%]
package initial-sgug-1:0.2.0-1.sgugbeta.mips is intended for a different architecture
package sgug-rpm-config-1-1.sgugbeta.mips is intended for a different architecture
package ncurses-base-6.1-12.20190803.sgugbeta.noarch is intended for a different architecture
package ncurses-term-6.1-12.20190803.sgugbeta.noarch is intended for a different architecture
package coreutils-common-8.30-4.sgugbeta.mips is intended for a different architecture
package vim-filesystem-2:8.1.2102-1.sgugbeta.noarch is intended for a different architecture
RPM dosen't think the O2 is mips arch? If not what is it? First things first, I needed that software installed. Google led me to some optional flags in RPM.
You can force RPM to install with --ignorearch
# rpm --reinstall --ignorearch -ivh noarch/*.rpm mips/*.rpm
But why is RPM doing this?
Turns out, the O2 just has 32bit IRIX bits installed by default, since it can't go over 1G RAM SGI didn't bother to install the 64bit parts of IRIX. RPM is getting confused by the output of unname on this system
See below from an Ontane (leafy and vanderlyn are Octanes) and the O2:
[dan@leafy ~]$ uname -a
IRIX64 leafy 6.5 07202013 IP30 mips Irix
dillera@o2 ~ $ uname -a
IRIX o2 6.5 07202013 IP32 mips IP32 Irix
The first string output is what RPM uses to decide on the system arch for it's packages.
The rpm --showrc is also a useful command:
An octane w/ 64bits:
vanderlyn:~> rpm --showrc | head -n10
ARCHITECTURE AND OS:
build arch : mips
compatible build archs: mips noarch
build os : irix
compatible build os's : irix
install arch : mips
install os : irix
compatible archs : mips noarch
compatible os's : irix
O2 with just 32bits:
[sgugshell dillera@o2 rpmbuild]$ rpm --showrc | head -n10
ARCHITECTURE AND OS:
build arch : ip32
compatible build archs: IP32
build os : irix
compatible build os's : IRIX
install arch : IP32
install os : IRIX
compatible archs : IP32
compatible os's : IRIX
All the sgug-rse packages have mips defined as the arch. ip32 isn't cutting it. sgug-rse however is complied for 32bit, not 64 so it all works.
The Indy should be similar- it won't show IP32 (that is the O2) but it won't show mips either.
Hammy is going to fix this! He will release a new RPM that will treat these 32bit arch as compatiable with the builds for sgug-rse.
RPM Madness
Problem:
[sgugshell dillera@o2 RPMS]$ sudo rpm --reinstall -ivh noarch/*.rpm mips/*.rpm
Verifying... ################################# [100%]
Preparing... ################################# [100%]
package initial-sgug-1:0.2.0-1.sgugbeta.mips is intended for a different architecture
package sgug-rpm-config-1-1.sgugbeta.mips is intended for a different architecture
package ncurses-base-6.1-12.20190803.sgugbeta.noarch is intended for a different architecture
package ncurses-term-6.1-12.20190803.sgugbeta.noarch is intended for a different architecture
package coreutils-common-8.30-4.sgugbeta.mips is intended for a different architecture
package vim-filesystem-2:8.1.2102-1.sgugbeta.noarch is intended for a different architecture
RPM dosen't think the O2 is mips arch? If not what is it? First things first, I needed that software installed. Google led me to some optional flags in RPM.
You can force RPM to install with --ignorearch
# rpm --reinstall --ignorearch -ivh noarch/*.rpm mips/*.rpm
But why is RPM doing this?
Turns out, the O2 just has 32bit IRIX bits installed by default, since it can't go over 1G RAM SGI didn't bother to install the 64bit parts of IRIX. RPM is getting confused by the output of unname on this system
See below from an Ontane (leafy and vanderlyn are Octanes) and the O2:
[dan@leafy ~]$ uname -a
IRIX64 leafy 6.5 07202013 IP30 mips Irix
dillera@o2 ~ $ uname -a
IRIX o2 6.5 07202013 IP32 mips IP32 Irix
The first string output is what RPM uses to decide on the system arch for it's packages.
The rpm --showrc is also a useful command:
An octane w/ 64bits:
vanderlyn:~> rpm --showrc | head -n10
ARCHITECTURE AND OS:
build arch : mips
compatible build archs: mips noarch
build os : irix
compatible build os's : irix
install arch : mips
install os : irix
compatible archs : mips noarch
compatible os's : irix
O2 with just 32bits:
[sgugshell dillera@o2 rpmbuild]$ rpm --showrc | head -n10
ARCHITECTURE AND OS:
build arch : ip32
compatible build archs: IP32
build os : irix
compatible build os's : IRIX
install arch : IP32
install os : IRIX
compatible archs : IP32
compatible os's : IRIX
All the sgug-rse packages have mips defined as the arch. ip32 isn't cutting it. sgug-rse however is complied for 32bit, not 64 so it all works.
The Indy should be similar- it won't show IP32 (that is the O2) but it won't show mips either.
Hammy is going to fix this! He will release a new RPM that will treat these 32bit arch as compatiable with the builds for sgug-rse.