SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
By the way... the last time I tried to run Firefox on an i586 CPU, I'm pretty sure I got a segmentation fault, not the CPU ISA message in the OP.
The error message "CPU ISA level is lower than required" comes from the dynamic loader /lib64/ld-linux-x86-64.so.2, at least on a 64-bit system. I don't know if there is a similar convention in 32-bit linux. There is info about ISA level in the elf header of the binary itself, in note .note.gnu.property, for example
Code:
$ readelf -n /usr/bin/ls
Displaying notes found in: .note.gnu.property
Owner Data size Description
GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0
Properties: x86 feature used: x86, x87, XMM
x86 ISA used: x86-64-baseline
Displaying notes found in: .note.ABI-tag
Owner Data size Description
GNU 0x00000010 NT_GNU_ABI_TAG (ABI version tag)
OS: Linux, ABI: 3.2.0
So, the dynamic loader checks all the shared objects needed (see ldd output) what is the highest ISA level needed, whether the CPU ISA level is high enough. No blindly executing and getting a segmentation fault any longer. There could be 'x86 ISA used: x86-64-v2' or x86-64-v3 or x86-64-v4 instead of x86-64-baseline.
EDIT: I guess this wouldn't prevent firefox crashing, as firefox-bin does not have .note.gnu.property. I guess the gnu toolchain would be needed instead of llvm/clang/lld.
Last edited by Petri Kaukasoina; 07-13-2023 at 12:43 PM.
If you upgraded glibc packages you are begging for problems as you will have to rebuild more or less the hole system, this is due to that more or less all packages are built against glibc...
Quote:
Originally Posted by marav
thankfully not
glibc is backward compatible
From the ChangeLog of Slackware 15.0:
Code:
+--------------------------+
Mon Feb 15 19:23:44 UTC 2021
Here we go again... upgraded to glibc-2.33 and one last mass rebuild for
Slackware 15.0. The only packages upgraded in this batch are glibc and the
kernels - everything else is just a rebuild against the new glibc.
Many years ago I messed up my system by upgrading glibc, things might have gotten better since then with version information in the libraries, but to me it still seems to be a need to recompile applications and other libraries.
+--------------------------+
Mon Feb 15 19:23:44 UTC 2021
Here we go again... upgraded to glibc-2.33 and one last mass rebuild for
Slackware 15.0. The only packages upgraded in this batch are glibc and the
kernels - everything else is just a rebuild against the new glibc.
Many years ago I messed up my system by upgrading glibc, things might have gotten better since then with version information in the libraries, but to me it still seems to be a need to recompile applications and other libraries.
regards Henrik
Without more context on what it was bumped from, this could be considered "freshening-up", which can be a good thing during distro maintenance (there was alot of that in the 15.0 dev). Recompiles do happen, but you don't necessarily have to rebuild everything. I have continued to run packages from Slackware 14.2 that I have built myself. Honestly if it aint broke, don't mess with it is a really good philosophy. Pat has been pretty good at handling rebuilds -- in the past it was slower paced on the amount of recompiling done. But alot of good work has went into the scripts, so I think it has picked up including more packages in the different phases as the package count increased.
If you have done LFS, you'll know a bit on how things work. But for glibc, I would never replace it on a stable release. Following -current can be a cause for concern if you have to track your changes on top of this. But what is even more an issue would be when you start pulling third party packages that have bleeding edge requirements. If certain distros are bumping the architecture flags more frequently, then more of these questions are going to keep coming in. It'd be nice to know the details on what was being done here.
The GNU C Library is designed to be a backwards compatible, portable, and high performance ISO C library.
The project was started circa 1988 and is more than 30 years old.
It is designed to be backwards compatible, however I'm not really sure it is still [really] compatible with the [really] old releases. And if I remember correctly, it [=compatibility] broke down once somewhere before 2.30. But anyway it is strictly tied to the kernel too (and these are [loosely] coupled by the compiler itself).
This would have been good info in the beginning that you are running on a VM. Your VM is misconfigured. Select a CPU model which supports x86-64-v2, or whatever is needed, instead of plain x86-64-v1.
Last edited by Petri Kaukasoina; 07-23-2023 at 04:00 AM.
It would be surprising if a software that has a current release on OS/2 requires anything from glibc or x86-64-v2.
I think OP should go to the provider of the bbbs software and ask them to compile the software to a baseline 64-bit cpu on a baseline distro instead of using a bleeding edge distro if they want to advertise it as "64-bit linux". As far as we know this is a very specific binary for a single distro that is only going to work in a specific scenario.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.