Re: Multiarch LFS
Aleksandar Kuktin <[email protected]>
| Newsgroups | gmane.linux.lfs.general |
|---|---|
| Message-ID | <20130210223633.55a97951@tekarot> |
>On Sun, 10 Feb 2013 21:05:40 +0100 >"Armin K." <[email protected]> wrote: > I had to build GCC and Glibc 2 or 3 times :| Me too. I consider the multiarch branch an intergral, if never properly maintained, branch of my system. I put all the 32-bit stuff in the /opt/linux32 directory. Said directory also has a symlink in opt/linux32 directory pointing to "../.." which theoretically means the 32-bit subsystem is self-sufficient and, for example, can be run in a chroot. I don't remember if I ever tried this although I almost certainly did and almost certainly had mixed results. The build of the 32-bit branch is based on cross-lfs. First you build a static GCC, hosted on x86_64 and compiling code for x86. Then, using that compiler, you build the x86 compiler. In comparison to the LFS build method, I stop the build at the end of chapter 5, after building the barebones chroot temporary system. The main problem I have encountered is with libstdc++. For some reason, you first have to build only the C portion of GCC, then use that to compile glibc, and only then was I able to compile the C++ portion of GCC. Please take note that new versions of GCC are implemented in C++. After you get workable GCC and glibc, you can make whatever you want. I will parse my build script command files tommorow and post a list of actions necessary for this, as I do them. There is perhaps one other thing you might want to toy with. Due to the way UNIX inter-process interface was designed, it is possible to simultaneously use several programs compiled for different architectures and have them interact. The simplest way to do this is by using pipes. Your system will have no problems running a 32-bit grep and piping the output into a 64-bit sed, for example. This feature means you can reduce the amount of stuff that gets compiled. Basically, for a minimal system, you only need to compile the things that are linked against. So, for wine, I had to compile X libraries, but not the X server. So I use a x86_64 X server which talkes to x86 libX that is linked into a x86 wine. And once you get to that point, the only logical next step is to learn about Plan 9, the successor OS to UNIX (hacked together by Ken and the boys), then hack your smartphone to run Linux From Scratch, connect it on one side to a USB hub together with a screen, keyboard and mouse and, on the other side, weave it into a Plan 9 instance running on you home network thus transforming the smartphone into a PC (really a terminal of sorts), while at the same time transforming you PC into a cycle and file server. A mainframe-and-terminals arrangment, if you will. :) BTW, is this a good moment to invoke the cycle of reincarnation? -- You don't need an AI for a robot uprising. Humans will do just fine. --Skynet -- http://linuxfromscratch.org/mailman/listinfo/lfs-chat FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page