building x86_64 using lsflivecd-86_64
Hello All, I the the 6.4 book thourgh, and it worked out very nicely. Now I need a 64 bit version. I am aware that the support for 64 bit systems is only about to come in a future release of LFS, but I would like to give it a shot somehow, since that is what I need. In order to do this, one needs a 64-bit compiler and kernel, which the x86_64 lsflivecd has, at least in my understanding. Having said that, I would like to ask a few questions: 1) For now, I am booting off the x86_64 lsflivecd, and I am following the CLFS way to build a 64-bit multilib system, although pure 64 would suffice, and somehow I find it unnatural that one would need to cross-compile, while building for the host, on the host itself. It just doesn't feel right. Or am I completelly wrong? 2) While on the x86_64 lsflivecd platform, by following the LSF 6.5 instructions one should, more or less, be able to build a 64 bit system. A few parameters would need to be modified only, right? For example, having --target=x86_64-unknown-linux-gnu among the compilation parameters, should on its own invoke 64-bit output generation. A few settings could also be borrowed from the CLFS book, in order to get 64-bit generation enabled, right? By the way, would that not be the default gcc setting on a 64-bit platform? I mean, automatically? 3) The lsflivecd (x86_64) site mentions an unofficial version of the, I suppose, 64-bit version book, that I hope would contain some pointers for me to start with, but neither could I find it in the mounted CD iso image nor on the webpages. Is such thing really available? A pointer to any version or draft would be highly appreciated. Thank you All in advance, Tibor-- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page
Re: building x86_64 using lsflivecd-86_64
Lapohos Tibor wrote: Hello All, I the the 6.4 book thourgh, and it worked out very nicely. Now I need a 64 bit version. I am aware that the support for 64 bit systems is only about to come in a future release of LFS, but I would like to give it a shot somehow, since that is what I need. In order to do this, one needs a 64-bit compiler and kernel, which the x86_64 lsflivecd has, at least in my understanding. Having said that, I would like to ask a few questions: 1) For now, I am booting off the x86_64 lsflivecd, and I am following the CLFS way to build a 64-bit multilib system, although pure 64 would suffice, and somehow I find it unnatural that one would need to cross-compile, while building for the host, on the host itself. It just doesn't feel right. Or am I completelly wrong? Yes, you are wrong. The reason for the cross compile is to completely isolate the current host from the new system. 2) While on the x86_64 lsflivecd platform, by following the LSF 6.5 instructions one should, more or less, be able to build a 64 bit system. A few parameters would need to be modified only, right? For example, having --target=x86_64-unknown-linux-gnu among the compilation parameters, should on its own invoke 64-bit output generation. A few settings could also be borrowed from the CLFS book, in order to get 64-bit generation enabled, right? By the way, would that not be the default gcc setting on a 64-bit platform? I mean, automatically? 3) The lsflivecd (x86_64) site mentions an unofficial version of the, I suppose, 64-bit version book, that I hope would contain some pointers for me to start with, but neither could I find it in the mounted CD iso image nor on the webpages. Is such thing really available? A pointer to any version or draft would be highly appreciated. Use the -dev book for a pure-64 system. See http://www.linuxfromscratch.org/lfs/view/development/prologue/architecture.html I do need to remove the note on the Host System Requirements page. -- Bruce -- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page
Re: building x86_64 using lsflivecd-86_64
First off, I understand that in newer versions of LFS book, the build process changed, so that GCC and binutils are built together. I still use the old method, in which binutils and GCC are build separately. This is reflected in this e-mail, so don't let that confuse you. On Sat, 14 Nov 2009 09:56:44 -0800 (PST) Lapohos Tibor tibor.lapo...@rogers.com wrote: Hello All, I the the 6.4 book thourgh, and it worked out very nicely. Now I need a 64 bit version. I am aware that the support for 64 bit systems is only about to come in a future release of LFS, but I would like to give it a shot somehow, since that is what I need. In order to do this, one needs a 64-bit compiler and kernel, which the x86_64 lsflivecd has, at least in my understanding. Having said that, I would like to ask a few questions: 1) For now, I am booting off the x86_64 lsflivecd, and I am following the CLFS way to build a 64-bit multilib system, although pure 64 would suffice, and somehow I find it unnatural that one would need to cross-compile, while building for the host, on the host itself. It just doesn't feel right. Or am I completelly wrong? This depends on the target capabilities. I have successfully built and am running/depending on a pure 64-bit system, and in my experience, for a pure 64-bit, no cross-compilers are necessary (apart from the first, which catapults your userland kernel from x86 to x86_64). However, for a multilib, a 32-bit compiler is a requirement (which should be logical - you want to be able to build x86 binaries, right?). Thus - CLFS. If you opt for a 64-bit only, however, the stock LFS commands should do the trick (I myself use ones from CLFS-1.0.0-x86_64-64, adapted for my versions of packages/patches). However, toolchain commands need to be tweaked, in the following way: 1) --disable-multilib needs to be passed to all binutils and GCCs (ie. everytime either is configured - first toolchain, second toolchain, system - it needs to be passed). Otherwise, make tries to build a cross-compiler.* 2) the gcc-x.y.z-pure64-1.patch (for system and first toolchain GCC) and gcc-x.y.z-pure64_specs-1.patch (for second toolchain GCC) from CLFS need to be applied. Look in them for details on what they do. [*] Apparently, I have repetadely built my second toolchain binutils without this switch, so I guess that one doesn't need it. Additionally, I now see I compiled system coreutils with environment variable CC set to gcc -m64. But I don't know why I put it there, the toolchain coreutils builds without it. O_o 2) While on the x86_64 lsflivecd platform, by following the LSF 6.5 instructions one should, more or less, be able to build a 64 bit system. A few parameters would need to be modified only, right? For example, having --target=x86_64-unknown-linux-gnu among the compilation parameters, should on its own invoke 64-bit output generation. A few settings could also be borrowed from the CLFS book, in order to get 64-bit generation enabled, right? By the way, would that not be the default gcc setting on a 64-bit platform? I mean, automatically? I have no experience running or building a multilib system, so I can't be of much help on that. :( On a pure-64, you can do almost everything you want (some programs and packages just can't/won't build - most notably kaffe ). No special tweaks needed - my system looks exactly as it looked when I was 32-bit. 3) The lsflivecd (x86_64) site mentions an unofficial version of the, I suppose, 64-bit version book, that I hope would contain some pointers for me to start with, but neither could I find it in the mounted CD iso image nor on the webpages. Is such thing really available? A pointer to any version or draft would be highly appreciated. Thank you All in advance, Tibor Hope I was helpful. :) -Aleksandar Kuktin -- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page
Re: building x86_64 using lsflivecd-86_64
On Sat, 14 Nov 2009 22:54:49 +0100 Aleksandar Kuktin akuk...@gmail.com wrote: [snip] If you opt for a 64-bit only, however, the stock LFS commands should do the trick (I myself use ones from CLFS-1.0.0-x86_64-64, adapted for my versions of packages/patches). [snip] Hope I was helpful. :) -Aleksandar Kuktin P.S. Woops! I forgot to mention I don't build GRUB anymore, those binaries (the GRUB in MBR, /boot/stage1 and /boot/stage2) are leftovers from my last x86. He-he. Small detail. :) -Aleksandar Kuktin -- http://linuxfromscratch.org/mailman/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/lfs/faq.html Unsubscribe: See the above information page