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.
Since 13.0, Slackware has an official x86_64 port. There is no grub package by default, and if you simply try to install it, you will get an error. A lot of users, including me, prefer grub over lilo.
It is not so much difficult to install grub on Slackware64, and I finally managed to do it. So it I thought it will be helpful for those who are new to Slackware64 and wants the old grub back. Hence the guide. Hope this will help you guys.
First, we have to keep two things in mind :
Slackware64 is pure 64-bit, it build binaries only in 64-bit.
Its multilib-compatible, just the multilib libraries (here, 32-bit compilers and libraries) are not present.
grub can be compiled in only 32-bit mode.
alien(Eric Hameleers) is well-known for slackware packages. He is really kind to make the multilib packages for Slackware64, so we can just use those packages to make our system multilib (like Slamd64).
download the following packages form there :
* The gcc compiler suite:
- gcc-4.3.3_multilib-x86_64-4alien.txz
- gcc-g++-4.3.3_multilib-x86_64-4alien.txz
- gcc-gfortran-4.3.3_multilib-x86_64-4alien.txz
- gcc-gnat-4.3.3_multilib-x86_64-4alien.txz
- gcc-java-4.3.3_multilib-x86_64-4alien.txz
- gcc-objc-4.3.3_multilib-x86_64-4alien.txz
* The GNU libc libraries:
- glibc-2.9_multilib-x86_64-3alien.txz
- glibc-i18n-2.9_multilib-x86_64-3alien.txz
- glibc-profile-2.9_multilib-x86_64-3alien.txz
- glibc-solibs-2.9_multilib-x86_64-3alien.txz
- glibc-zoneinfo-2.9_multilib-noarch-3alien.txz
then just upgrade the packages by running:
upgradepkg --reinstall --install-new *.t?z
Next step is to get the grub source (It is inside /extra/source/grub)
from the Install DVD.
That is only worth it if you were going to use miltilib for other more important tasks that just booting your Slackware installation.
Just for GRUB this is plain overkill.
It might be overkill, but if someone needs GRUB, this works. Until GRUB can be compiled on a 64-bit system without such procedures, then technically this is the only option.
I'm using the legacy GRUB and have done so for as long as I have used GNU/Linux systems. In another thread I asked for people to share caveats with migrating from 32-bit 13.0 to 64-bit 13.0. Related to that thread is this news about GRUB.
Am I to understand correctly from this thread that, if I install 64-bit 13.0 in its own partition(s), that I no longer will be able to use GRUB as already installed as my bootloader? That the currently installed GRUB cannot boot a 64-bit OS?
how is it that grub is hailed as better than lilo (by some users) but is not actively developed to facilitate the development of grub2 which isn't ready for anything more than 'usable,but'?
@ Woodsman
you can't compile grub on 64bit only architecture. However, if you have a 32bit binary of grub, it will still be able to boot any of your partitions provided that you have the 32bit libs that grub requires or you have a static compile of grub. If somebody provides you the grub package for slackware64, you probably only need the glibc multilib packages
you can't compile grub on 64bit only architecture. However, if you have a 32bit binary of grub, it will still be able to boot any of your partitions provided that you have the 32bit libs that grub requires or you have a static compile of grub.
Okay, that makes sense. Thanks. I never had read anything that GRUB could not be used to load a 64-bit OS. I intend to install 64-bit 13.0 in different partitions from 32-bit 13.0. As the GRUB files will be stored on the 32-bit 13.0, according to your description GRUB should be able to boot the 64-bit version.
I'm using this grub package: ftp://slackware.mirrors.tds.net/pub/....0/extra/grub/
I use a small boot partition that it's installed to.
After you run:
grubconfig
it boots Slack, Slack64, Slamd64, BW64 - ext3 or ext4.
I tried the above procedure and now GRUB is working fine on Slackware64. If you use slackpkg to update, you have to remember to blacklist the multilib packages, otherwise they will be overwritten by the standard packages.
I tried the above procedure and now GRUB is working fine on Slackware64. If you use slackpkg to update, you have to remember to blacklist the multilib packages, otherwise they will be overwritten by the standard packages.
yes, that is explained in the alien's wiki. I am glad that you are booting now with grub and ext4.
I'm using this grub package: ftp://slackware.mirrors.tds.net/pub/....0/extra/grub/
I use a small boot partition that it's installed to.
After you run:
grubconfig
it boots Slack, Slack64, Slamd64, BW64 - ext3 or ext4.
Thanks, it worked, but I had to cp -v e2fs_stage1_5 ext4_stage1_5
Yes thats natural since grub comes with only e2fs_stage1_5 by default and booting into ext4 needs a ext4_stage1_5 file to be there. Though on boot messege it shows ext4 as e2fs ... since its just a renaming
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.