* [Buildroot] grub compilation issue (x86_64 target) @ 2010-07-21 15:11 vbr vbr 2010-07-21 18:59 ` Thomas Petazzoni 0 siblings, 1 reply; 6+ messages in thread From: vbr vbr @ 2010-07-21 15:11 UTC (permalink / raw) To: buildroot Hi, There seems to be a compilation issue in the grub area with buildroot's latest code (git) with x86_64 target. (or maybe it's just my setup) After googling a little bit, the type of error shown in the config.log seems to indicate a missing library. I attached the config log and my buildroot config. Vincent -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100721/69a5bed9/attachment-0001.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: config.log Type: text/x-log Size: 11511 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100721/69a5bed9/attachment-0001.bin> -------------- next part -------------- A non-text attachment was scrubbed... Name: br.config Type: application/octet-stream Size: 18462 bytes Desc: not available URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100721/69a5bed9/attachment-0001.obj> ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] grub compilation issue (x86_64 target) 2010-07-21 15:11 [Buildroot] grub compilation issue (x86_64 target) vbr vbr @ 2010-07-21 18:59 ` Thomas Petazzoni 2010-07-21 19:09 ` vbr vbr 0 siblings, 1 reply; 6+ messages in thread From: Thomas Petazzoni @ 2010-07-21 18:59 UTC (permalink / raw) To: buildroot Hello, On Wed, 21 Jul 2010 08:11:24 -0700 vbr vbr <vvvg77@gmail.com> wrote: > There seems to be a compilation issue in the grub area with > buildroot's latest code (git) with x86_64 target. (or maybe it's just > my setup) After googling a little bit, the type of error shown in the > config.log seems to indicate a missing library. > I attached the config log and my buildroot config. Yes, this is due to the fact that Grub uses the x86_64 cross-compilation toolchain with the -m32 gcc switch, in order to produce 32 bits binaries. Unfortunately, the toolchain that Buildroot produces is a pure 64 bits toolchain, so it cannot support the -m32 switch. I see four possible solutions to this : *) Extend the Buildroot toolchain build system so that it can produce a 32/64 bits multilib toolchain that supports -m32. As embedded on x86_64 is very uncommon, I'm not sure we'll find someone who is interested to work on this. *) Extend Crosstool-NG so that it can produce such a 32/64 bits toolchain and then use it as an external toolchain. I've started to work on multilib support for Crosstool-NG, but it's far from being ready at the moment. *) Somehow make Buildroot generate two toolchains, a 32 bits one used to compile Grub, and a 64 bits toolchain to compile all the rest. Since would involve fairly large and complicated modifications, which I'm not sure we're ready to do for such a untypical use-case. *) Mark Grub as broken on x86_64 so that it cannot be compiled. I think this is the solution we're going to choose. Grub can always be compiled outside of Buildroot, and the build of bootloaders is not the biggest added value of embedded build systems such as Buildroot anyway. Just out of curiosity, what is your use case for using Buildroot on a x86_64 machine ? Is it just for experimenting/playing, or are they real embedded products out there using x86_64 and that have footprint requirements that make using Buildroot an interesting thing compared to using full-blown distributions ? Thanks, Thomas -- Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] grub compilation issue (x86_64 target) 2010-07-21 18:59 ` Thomas Petazzoni @ 2010-07-21 19:09 ` vbr vbr 2010-07-22 0:33 ` Paul Jones 0 siblings, 1 reply; 6+ messages in thread From: vbr vbr @ 2010-07-21 19:09 UTC (permalink / raw) To: buildroot Thanks for the quick answer. Just playing to see the feasability of using buildroot as a diagnostic OS on x86_64 servers. It is not meant to be the real OS running on these servers. One thing I am confused about is that ISO support was added recently for x86_64 targets in buildroot and it seems that ISO requires grub (from menuconfig). If grub is not supported, then ISO can't be supported either for x86_64. Also, I am pretty sure that grub was building fine on buildroot 2010.05 for x86_64. I could check that again. Thanks Vincent On Wed, Jul 21, 2010 at 11:59 AM, Thomas Petazzoni < thomas.petazzoni@free-electrons.com> wrote: > Hello, > > On Wed, 21 Jul 2010 08:11:24 -0700 > vbr vbr <vvvg77@gmail.com> wrote: > > > There seems to be a compilation issue in the grub area with > > buildroot's latest code (git) with x86_64 target. (or maybe it's just > > my setup) After googling a little bit, the type of error shown in the > > config.log seems to indicate a missing library. > > I attached the config log and my buildroot config. > > Yes, this is due to the fact that Grub uses the x86_64 > cross-compilation toolchain with the -m32 gcc switch, in order to > produce 32 bits binaries. Unfortunately, the toolchain that Buildroot > produces is a pure 64 bits toolchain, so it cannot support the -m32 > switch. > > I see four possible solutions to this : > > *) Extend the Buildroot toolchain build system so that it can produce > a 32/64 bits multilib toolchain that supports -m32. As embedded on > x86_64 is very uncommon, I'm not sure we'll find someone who is > interested to work on this. > > *) Extend Crosstool-NG so that it can produce such a 32/64 bits > toolchain and then use it as an external toolchain. I've started to > work on multilib support for Crosstool-NG, but it's far from being > ready at the moment. > > *) Somehow make Buildroot generate two toolchains, a 32 bits one used > to compile Grub, and a 64 bits toolchain to compile all the rest. > Since would involve fairly large and complicated modifications, > which I'm not sure we're ready to do for such a untypical use-case. > > *) Mark Grub as broken on x86_64 so that it cannot be compiled. I > think this is the solution we're going to choose. Grub can always > be compiled outside of Buildroot, and the build of bootloaders is > not the biggest added value of embedded build systems such as > Buildroot anyway. > > Just out of curiosity, what is your use case for using Buildroot on a > x86_64 machine ? Is it just for experimenting/playing, or are they real > embedded products out there using x86_64 and that have footprint > requirements that make using Buildroot an interesting thing compared to > using full-blown distributions ? > > Thanks, > > Thomas > -- > Thomas Petazzoni, Free Electrons > Kernel, drivers, real-time and embedded Linux > development, consulting, training and support. > http://free-electrons.com > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100721/fbc5ee66/attachment.html> ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] grub compilation issue (x86_64 target) 2010-07-21 19:09 ` vbr vbr @ 2010-07-22 0:33 ` Paul Jones 2010-07-22 1:19 ` vbr vbr 0 siblings, 1 reply; 6+ messages in thread From: Paul Jones @ 2010-07-22 0:33 UTC (permalink / raw) To: buildroot Could you just use the 32bit x86 rather than the x86_64? I do this myself for testing and it works fine. Paul. From: buildroot-bounces@busybox.net [mailto:buildroot-bounces at busybox.net] On Behalf Of vbr vbr Sent: Thursday, 22 July 2010 5:09 AM To: Thomas Petazzoni Cc: buildroot at busybox.net Subject: Re: [Buildroot] grub compilation issue (x86_64 target) Thanks for the quick answer. Just playing to see the feasability of using buildroot as a diagnostic OS on x86_64 servers. It is not meant to be the real OS running on these servers. One thing I am confused about is that ISO support was added recently for x86_64 targets in buildroot and it seems that ISO requires grub (from menuconfig). If grub is not supported, then ISO can't be supported either for x86_64. Also, I am pretty sure that grub was building fine on buildroot 2010.05 for x86_64. I could check that again. Thanks Vincent On Wed, Jul 21, 2010 at 11:59 AM, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: Hello, On Wed, 21 Jul 2010 08:11:24 -0700 vbr vbr <vvvg77@gmail.com> wrote: > There seems to be a compilation issue in the grub area with > buildroot's latest code (git) with x86_64 target. (or maybe it's just > my setup) After googling a little bit, the type of error shown in the > config.log seems to indicate a missing library. > I attached the config log and my buildroot config. Yes, this is due to the fact that Grub uses the x86_64 cross-compilation toolchain with the -m32 gcc switch, in order to produce 32 bits binaries. Unfortunately, the toolchain that Buildroot produces is a pure 64 bits toolchain, so it cannot support the -m32 switch. I see four possible solutions to this : *) Extend the Buildroot toolchain build system so that it can produce a 32/64 bits multilib toolchain that supports -m32. As embedded on x86_64 is very uncommon, I'm not sure we'll find someone who is interested to work on this. *) Extend Crosstool-NG so that it can produce such a 32/64 bits toolchain and then use it as an external toolchain. I've started to work on multilib support for Crosstool-NG, but it's far from being ready at the moment. *) Somehow make Buildroot generate two toolchains, a 32 bits one used to compile Grub, and a 64 bits toolchain to compile all the rest. Since would involve fairly large and complicated modifications, which I'm not sure we're ready to do for such a untypical use-case. *) Mark Grub as broken on x86_64 so that it cannot be compiled. I think this is the solution we're going to choose. Grub can always be compiled outside of Buildroot, and the build of bootloaders is not the biggest added value of embedded build systems such as Buildroot anyway. Just out of curiosity, what is your use case for using Buildroot on a x86_64 machine ? Is it just for experimenting/playing, or are they real embedded products out there using x86_64 and that have footprint requirements that make using Buildroot an interesting thing compared to using full-blown distributions ? Thanks, Thomas -- Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100722/b1520fcd/attachment.html> ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] grub compilation issue (x86_64 target) 2010-07-22 0:33 ` Paul Jones @ 2010-07-22 1:19 ` vbr vbr 2010-07-22 16:22 ` vbr vbr 0 siblings, 1 reply; 6+ messages in thread From: vbr vbr @ 2010-07-22 1:19 UTC (permalink / raw) To: buildroot That's what I had just decided earlier today. :-) While trying to boot the ISO, I am getting a "image too big" error. My rootfs.iso9660 is about 315 MB. This seems huge, I was expecting something about 20MB. As I am a buildroot beginner, I only changed a few config parameters. Do these sizes sound reasonable?? [vincent at 192.168.0.1 buildroot-2010.05]$ ls -al output/images/ total 622044 drwxr-xr-x 2 root root 4096 Jul 15 10:23 . drwxr-xr-x 9 vincent users 4096 Jul 14 14:49 .. -rw-r--r-- 1 root root 2528704 Jul 15 15:41 bzImage -rw-r--r-- 1 root root 315383808 Jul 15 16:07 rootfs.ext2 -rw-r--r-- 1 root root 318392320 Jul 15 16:07 rootfs.iso9660 Thanks Vincent On Wed, Jul 21, 2010 at 5:33 PM, Paul Jones <paul@pauljones.id.au> wrote: > Could you just use the 32bit x86 rather than the x86_64? I do this myself > for testing and it works fine. > > > > > > Paul. > > > > > > *From:* buildroot-bounces at busybox.net [mailto: > buildroot-bounces at busybox.net] *On Behalf Of *vbr vbr > *Sent:* Thursday, 22 July 2010 5:09 AM > *To:* Thomas Petazzoni > *Cc:* buildroot at busybox.net > *Subject:* Re: [Buildroot] grub compilation issue (x86_64 target) > > > > Thanks for the quick answer. > > Just playing to see the feasability of using buildroot as a diagnostic OS > on x86_64 servers. It is not meant to be the real OS running on these > servers. > > One thing I am confused about is that ISO support was added recently for > x86_64 targets in buildroot and it seems that ISO requires grub (from > menuconfig). If grub is not supported, then ISO can't be supported either > for x86_64. Also, I am pretty sure that grub was building fine on buildroot > 2010.05 for x86_64. I could check that again. > > Thanks > Vincent > > On Wed, Jul 21, 2010 at 11:59 AM, Thomas Petazzoni < > thomas.petazzoni at free-electrons.com> wrote: > > Hello, > > > On Wed, 21 Jul 2010 08:11:24 -0700 > vbr vbr <vvvg77@gmail.com> wrote: > > > There seems to be a compilation issue in the grub area with > > buildroot's latest code (git) with x86_64 target. (or maybe it's just > > my setup) After googling a little bit, the type of error shown in the > > config.log seems to indicate a missing library. > > I attached the config log and my buildroot config. > > Yes, this is due to the fact that Grub uses the x86_64 > cross-compilation toolchain with the -m32 gcc switch, in order to > produce 32 bits binaries. Unfortunately, the toolchain that Buildroot > produces is a pure 64 bits toolchain, so it cannot support the -m32 > switch. > > I see four possible solutions to this : > > *) Extend the Buildroot toolchain build system so that it can produce > a 32/64 bits multilib toolchain that supports -m32. As embedded on > x86_64 is very uncommon, I'm not sure we'll find someone who is > interested to work on this. > > *) Extend Crosstool-NG so that it can produce such a 32/64 bits > toolchain and then use it as an external toolchain. I've started to > work on multilib support for Crosstool-NG, but it's far from being > ready at the moment. > > *) Somehow make Buildroot generate two toolchains, a 32 bits one used > to compile Grub, and a 64 bits toolchain to compile all the rest. > Since would involve fairly large and complicated modifications, > which I'm not sure we're ready to do for such a untypical use-case. > > *) Mark Grub as broken on x86_64 so that it cannot be compiled. I > think this is the solution we're going to choose. Grub can always > be compiled outside of Buildroot, and the build of bootloaders is > not the biggest added value of embedded build systems such as > Buildroot anyway. > > Just out of curiosity, what is your use case for using Buildroot on a > x86_64 machine ? Is it just for experimenting/playing, or are they real > embedded products out there using x86_64 and that have footprint > requirements that make using Buildroot an interesting thing compared to > using full-blown distributions ? > > Thanks, > > Thomas > -- > Thomas Petazzoni, Free Electrons > Kernel, drivers, real-time and embedded Linux > development, consulting, training and support. > http://free-electrons.com > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > > > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100721/34be5854/attachment-0001.html> ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] grub compilation issue (x86_64 target) 2010-07-22 1:19 ` vbr vbr @ 2010-07-22 16:22 ` vbr vbr 0 siblings, 0 replies; 6+ messages in thread From: vbr vbr @ 2010-07-22 16:22 UTC (permalink / raw) To: buildroot i386/ISO/grub/ext2 combination is working for me. I was able to fully boot buildroot on qemu for the first time. Used initrd as main fs which will allow to run diagnostics without disk. :-) Thanks Vincent On Wed, Jul 21, 2010 at 6:19 PM, vbr vbr <vvvg77@gmail.com> wrote: > That's what I had just decided earlier today. :-) > > While trying to boot the ISO, I am getting a "image too big" error. My > rootfs.iso9660 is about 315 MB. This seems huge, I was expecting something > about 20MB. As I am a buildroot beginner, I only changed a few config > parameters. Do these sizes sound reasonable?? > > [vincent at 192.168.0.1 buildroot-2010.05]$ ls -al output/images/ > total 622044 > drwxr-xr-x 2 root root 4096 Jul 15 10:23 . > drwxr-xr-x 9 vincent users 4096 Jul 14 14:49 .. > -rw-r--r-- 1 root root 2528704 Jul 15 15:41 bzImage > -rw-r--r-- 1 root root 315383808 Jul 15 16:07 rootfs.ext2 > -rw-r--r-- 1 root root 318392320 Jul 15 16:07 rootfs.iso9660 > > Thanks > Vincent > > > > > On Wed, Jul 21, 2010 at 5:33 PM, Paul Jones <paul@pauljones.id.au> wrote: > >> Could you just use the 32bit x86 rather than the x86_64? I do this myself >> for testing and it works fine. >> >> >> >> >> >> Paul. >> >> >> >> >> >> *From:* buildroot-bounces at busybox.net [mailto: >> buildroot-bounces at busybox.net] *On Behalf Of *vbr vbr >> *Sent:* Thursday, 22 July 2010 5:09 AM >> *To:* Thomas Petazzoni >> *Cc:* buildroot at busybox.net >> *Subject:* Re: [Buildroot] grub compilation issue (x86_64 target) >> >> >> >> Thanks for the quick answer. >> >> Just playing to see the feasability of using buildroot as a diagnostic OS >> on x86_64 servers. It is not meant to be the real OS running on these >> servers. >> >> One thing I am confused about is that ISO support was added recently for >> x86_64 targets in buildroot and it seems that ISO requires grub (from >> menuconfig). If grub is not supported, then ISO can't be supported either >> for x86_64. Also, I am pretty sure that grub was building fine on buildroot >> 2010.05 for x86_64. I could check that again. >> >> Thanks >> Vincent >> >> On Wed, Jul 21, 2010 at 11:59 AM, Thomas Petazzoni < >> thomas.petazzoni at free-electrons.com> wrote: >> >> Hello, >> >> >> On Wed, 21 Jul 2010 08:11:24 -0700 >> vbr vbr <vvvg77@gmail.com> wrote: >> >> > There seems to be a compilation issue in the grub area with >> > buildroot's latest code (git) with x86_64 target. (or maybe it's just >> > my setup) After googling a little bit, the type of error shown in the >> > config.log seems to indicate a missing library. >> > I attached the config log and my buildroot config. >> >> Yes, this is due to the fact that Grub uses the x86_64 >> cross-compilation toolchain with the -m32 gcc switch, in order to >> produce 32 bits binaries. Unfortunately, the toolchain that Buildroot >> produces is a pure 64 bits toolchain, so it cannot support the -m32 >> switch. >> >> I see four possible solutions to this : >> >> *) Extend the Buildroot toolchain build system so that it can produce >> a 32/64 bits multilib toolchain that supports -m32. As embedded on >> x86_64 is very uncommon, I'm not sure we'll find someone who is >> interested to work on this. >> >> *) Extend Crosstool-NG so that it can produce such a 32/64 bits >> toolchain and then use it as an external toolchain. I've started to >> work on multilib support for Crosstool-NG, but it's far from being >> ready at the moment. >> >> *) Somehow make Buildroot generate two toolchains, a 32 bits one used >> to compile Grub, and a 64 bits toolchain to compile all the rest. >> Since would involve fairly large and complicated modifications, >> which I'm not sure we're ready to do for such a untypical use-case. >> >> *) Mark Grub as broken on x86_64 so that it cannot be compiled. I >> think this is the solution we're going to choose. Grub can always >> be compiled outside of Buildroot, and the build of bootloaders is >> not the biggest added value of embedded build systems such as >> Buildroot anyway. >> >> Just out of curiosity, what is your use case for using Buildroot on a >> x86_64 machine ? Is it just for experimenting/playing, or are they real >> embedded products out there using x86_64 and that have footprint >> requirements that make using Buildroot an interesting thing compared to >> using full-blown distributions ? >> >> Thanks, >> >> Thomas >> -- >> Thomas Petazzoni, Free Electrons >> Kernel, drivers, real-time and embedded Linux >> development, consulting, training and support. >> http://free-electrons.com >> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot >> >> >> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20100722/da91741a/attachment.html> ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-07-22 16:22 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-07-21 15:11 [Buildroot] grub compilation issue (x86_64 target) vbr vbr 2010-07-21 18:59 ` Thomas Petazzoni 2010-07-21 19:09 ` vbr vbr 2010-07-22 0:33 ` Paul Jones 2010-07-22 1:19 ` vbr vbr 2010-07-22 16:22 ` vbr vbr
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox