Howdy.
It's time to announce a little project I've been working on for the last few weeks: the ARMv8 bootstrap project for Fedora.
There has been a lot of interest in ARMv8 (also known as aarch64) in the last few months since it was introduced by ARM. A 64-bit processor that uses as little power as possible could provide an enormous cost savings to the vast and growing data centers throughout the world.
So, even though hardware is not yet available, we have started the work needed to bring Fedora to ARMv8. Using the ARM provided Foundation model (a platform simulator for ARMv8), we have been building up the packages needed to eventually get to a full native build of Fedora. Details and current status are here:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64
Of the six stages needed in the bootstrap of a new architecture, we are in the middle of stage 2; these are therefore pretty early bits. In the interest of full transparency in what we do, and in the spirit of release early and release often, grab a copy and have fun!
On the Fedora wiki, you will find instructions on where to find all the bits and pieces used to construct the root file system image that's been created so far, and how to use the ARM Foundation model to do further work. And there is plenty to do :).
If you'd like to help, read through the wiki pages above and get yourself to the point where you can run the ARM Foundation model using the Fedora root file system. Then find a package needing some love and do what needs to be done for ARMv8 (the wiki explains how).
And if you have questions, you can find me (ahs3) on #fedora-arm on IRC (Freenode), or ask on this mailing list; the more, the merrier.
Hi Al,
It is really excited to see ARMv8 bootstrap on fedora. I'd really love to get involved.
Right now, I'm following the wiki's instructions to rebuild stage1 to get familiar with ARMv8's bootstrap. However, there is an error stopping the stage1 building process saying:
/home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: syntax error near unexpected token `)' /home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: `aarch64*-*-linux*)' make[1]: *** [configure-ld] Error 1 make[1]: Leaving directory `/home/cbz/src/fedora-armv8/bootstrap/builds/binutils' make: *** [all] Error 2 + echo
+ echo Module binutils failed Module binutils failed + return 1
The cross toolchain that I used is downloaded from linaro. And I rename all its aarch64-linux-gnu-* to aarch64-redhat-linux-gnu-*.
Any ideas?
Regards,
Chen Baozi
On Wed, Nov 21, 2012 at 02:30:27PM -0700, Al Stone wrote:
Howdy.
It's time to announce a little project I've been working on for the last few weeks: the ARMv8 bootstrap project for Fedora.
There has been a lot of interest in ARMv8 (also known as aarch64) in the last few months since it was introduced by ARM. A 64-bit processor that uses as little power as possible could provide an enormous cost savings to the vast and growing data centers throughout the world.
So, even though hardware is not yet available, we have started the work needed to bring Fedora to ARMv8. Using the ARM provided Foundation model (a platform simulator for ARMv8), we have been building up the packages needed to eventually get to a full native build of Fedora. Details and current status are here:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64
Of the six stages needed in the bootstrap of a new architecture, we are in the middle of stage 2; these are therefore pretty early bits. In the interest of full transparency in what we do, and in the spirit of release early and release often, grab a copy and have fun!
On the Fedora wiki, you will find instructions on where to find all the bits and pieces used to construct the root file system image that's been created so far, and how to use the ARM Foundation model to do further work. And there is plenty to do :).
If you'd like to help, read through the wiki pages above and get yourself to the point where you can run the ARM Foundation model using the Fedora root file system. Then find a package needing some love and do what needs to be done for ARMv8 (the wiki explains how).
And if you have questions, you can find me (ahs3) on #fedora-arm on IRC (Freenode), or ask on this mailing list; the more, the merrier.
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
I think I've found where this problem comes from.
In binutils srpm, there is a patch called binutils-2.22.52.0.1-aarch64-paths.patch. In this patch, there is a changset:
diff -urN binutils-2.22.52.0.1/ld/configure.tgt binutils-2.22.52.0.1-aarch64/ld/configure.tgt --- binutils-2.22.52.0.1/ld/configure.tgt 2012-11-15 14:33:51.503580945 -0700 +++ binutils-2.22.52.0.1-aarch64/ld/configure.tgt 2012-11-15 16:01:31.095377997 -0700 @@ -716,6 +716,12 @@ NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib' ;;
+aarch64*-redhat-linux*) + MULTIARCHTUPLE=aarch64-linux-gnu + NATIVE_LIB_DIRS="/usr/local/lib64 /lib64 /usr/lib64" + ;; + +hppa*64*-*-hpux11*) aarch64*-*-linux*) ^^^ This may results the error. Since, there has to be ";;" between this two lines. Or just removing the "aarch64*-*-linux*)" line.
On Sun, Nov 25, 2012 at 10:54:38AM +0800, Chen Baozi wrote:
Hi Al,
It is really excited to see ARMv8 bootstrap on fedora. I'd really love to get involved.
Right now, I'm following the wiki's instructions to rebuild stage1 to get familiar with ARMv8's bootstrap. However, there is an error stopping the stage1 building process saying:
/home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: syntax error near unexpected token `)' /home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: `aarch64*-*-linux*)' make[1]: *** [configure-ld] Error 1 make[1]: Leaving directory `/home/cbz/src/fedora-armv8/bootstrap/builds/binutils' make: *** [all] Error 2
echo
echo Module binutils failed
Module binutils failed
- return 1
The cross toolchain that I used is downloaded from linaro. And I rename all its aarch64-linux-gnu-* to aarch64-redhat-linux-gnu-*.
Any ideas?
Regards,
Chen Baozi
On Wed, Nov 21, 2012 at 02:30:27PM -0700, Al Stone wrote:
Howdy.
It's time to announce a little project I've been working on for the last few weeks: the ARMv8 bootstrap project for Fedora.
There has been a lot of interest in ARMv8 (also known as aarch64) in the last few months since it was introduced by ARM. A 64-bit processor that uses as little power as possible could provide an enormous cost savings to the vast and growing data centers throughout the world.
So, even though hardware is not yet available, we have started the work needed to bring Fedora to ARMv8. Using the ARM provided Foundation model (a platform simulator for ARMv8), we have been building up the packages needed to eventually get to a full native build of Fedora. Details and current status are here:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64
Of the six stages needed in the bootstrap of a new architecture, we are in the middle of stage 2; these are therefore pretty early bits. In the interest of full transparency in what we do, and in the spirit of release early and release often, grab a copy and have fun!
On the Fedora wiki, you will find instructions on where to find all the bits and pieces used to construct the root file system image that's been created so far, and how to use the ARM Foundation model to do further work. And there is plenty to do :).
If you'd like to help, read through the wiki pages above and get yourself to the point where you can run the ARM Foundation model using the Fedora root file system. Then find a package needing some love and do what needs to be done for ARMv8 (the wiki explains how).
And if you have questions, you can find me (ahs3) on #fedora-arm on IRC (Freenode), or ask on this mailing list; the more, the merrier.
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
On Sun, Nov 25, 2012 at 02:01:51PM +0800, Chen Baozi wrote:
I think I've found where this problem comes from.
In binutils srpm, there is a patch called binutils-2.22.52.0.1-aarch64-paths.patch. In this patch, there is a changset:
diff -urN binutils-2.22.52.0.1/ld/configure.tgt binutils-2.22.52.0.1-aarch64/ld/configure.tgt --- binutils-2.22.52.0.1/ld/configure.tgt 2012-11-15 14:33:51.503580945 -0700 +++ binutils-2.22.52.0.1-aarch64/ld/configure.tgt 2012-11-15 16:01:31.095377997 -0700 @@ -716,6 +716,12 @@ NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib' ;;
+aarch64*-redhat-linux*)
- MULTIARCHTUPLE=aarch64-linux-gnu
- NATIVE_LIB_DIRS="/usr/local/lib64 /lib64 /usr/lib64"
- ;;
+hppa*64*-*-hpux11*)
It seems that "hppa*64*-*-hpux11*)" is redundant. So I deleted this line in this patch.
aarch64*-*-linux*) ^^^ This may results the error. Since, there has to be ";;" between this two lines. Or just removing the "aarch64*-*-linux*)" line.
On Sun, Nov 25, 2012 at 10:54:38AM +0800, Chen Baozi wrote:
Hi Al,
It is really excited to see ARMv8 bootstrap on fedora. I'd really love to get involved.
Right now, I'm following the wiki's instructions to rebuild stage1 to get familiar with ARMv8's bootstrap. However, there is an error stopping the stage1 building process saying:
/home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: syntax error near unexpected token `)' /home/cbz/src/fedora-armv8/bootstrap/rpmbuild/BUILD/binutils-2.22.52.0.1/ld/configure.tgt: /line 725: `aarch64*-*-linux*)' make[1]: *** [configure-ld] Error 1 make[1]: Leaving directory `/home/cbz/src/fedora-armv8/bootstrap/builds/binutils' make: *** [all] Error 2
echo
echo Module binutils failed
Module binutils failed
- return 1
The cross toolchain that I used is downloaded from linaro. And I rename all its aarch64-linux-gnu-* to aarch64-redhat-linux-gnu-*.
Any ideas?
Regards,
Chen Baozi
On Wed, Nov 21, 2012 at 02:30:27PM -0700, Al Stone wrote:
Howdy.
It's time to announce a little project I've been working on for the last few weeks: the ARMv8 bootstrap project for Fedora.
There has been a lot of interest in ARMv8 (also known as aarch64) in the last few months since it was introduced by ARM. A 64-bit processor that uses as little power as possible could provide an enormous cost savings to the vast and growing data centers throughout the world.
So, even though hardware is not yet available, we have started the work needed to bring Fedora to ARMv8. Using the ARM provided Foundation model (a platform simulator for ARMv8), we have been building up the packages needed to eventually get to a full native build of Fedora. Details and current status are here:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64
Of the six stages needed in the bootstrap of a new architecture, we are in the middle of stage 2; these are therefore pretty early bits. In the interest of full transparency in what we do, and in the spirit of release early and release often, grab a copy and have fun!
On the Fedora wiki, you will find instructions on where to find all the bits and pieces used to construct the root file system image that's been created so far, and how to use the ARM Foundation model to do further work. And there is plenty to do :).
If you'd like to help, read through the wiki pages above and get yourself to the point where you can run the ARM Foundation model using the Fedora root file system. Then find a package needing some love and do what needs to be done for ARMv8 (the wiki explains how).
And if you have questions, you can find me (ahs3) on #fedora-arm on IRC (Freenode), or ask on this mailing list; the more, the merrier.
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
On 11/25/2012 05:25 AM, Chen Baozi wrote:
On Sun, Nov 25, 2012 at 02:01:51PM +0800, Chen Baozi wrote:
I think I've found where this problem comes from.
In binutils srpm, there is a patch called binutils-2.22.52.0.1-aarch64-paths.patch. In this patch, there is a changset:
diff -urN binutils-2.22.52.0.1/ld/configure.tgt binutils-2.22.52.0.1-aarch64/ld/configure.tgt --- binutils-2.22.52.0.1/ld/configure.tgt 2012-11-15 14:33:51.503580945 -0700 +++ binutils-2.22.52.0.1-aarch64/ld/configure.tgt 2012-11-15 16:01:31.095377997 -0700 @@ -716,6 +716,12 @@ NATIVE_LIB_DIRS='/lib /usr/lib /usr/local/lib' ;;
+aarch64*-redhat-linux*)
- MULTIARCHTUPLE=aarch64-linux-gnu
- NATIVE_LIB_DIRS="/usr/local/lib64 /lib64 /usr/lib64"
- ;;
+hppa*64*-*-hpux11*)
It seems that "hppa*64*-*-hpux11*)" is redundant. So I deleted this line in this patch.
aarch64*-*-linux*) ^^^ This may results the error. Since, there has to be ";;" between this two lines. Or just removing the "aarch64*-*-linux*)" line.
Nice catch; the "hppa*64*-*-hpux11*)" is indeed redundant. I've removed this and put the corrected SRPM in https://fedorapeople.org/groups/armv8/SRPMs/f17/changed.
Thanks!
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
On Wed, Nov 21, 2012 at 02:30:27PM -0700, Al Stone wrote:
Howdy.
It's time to announce a little project I've been working on for the last few weeks: the ARMv8 bootstrap project for Fedora.
There has been a lot of interest in ARMv8 (also known as aarch64) in the last few months since it was introduced by ARM. A 64-bit processor that uses as little power as possible could provide an enormous cost savings to the vast and growing data centers throughout the world.
So, even though hardware is not yet available, we have started the work needed to bring Fedora to ARMv8. Using the ARM provided Foundation model (a platform simulator for ARMv8), we have been building up the packages needed to eventually get to a full native build of Fedora. Details and current status are here:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64
Of the six stages needed in the bootstrap of a new architecture, we are in the middle of stage 2; these are therefore pretty early bits. In the interest of full transparency in what we do, and in the spirit of release early and release often, grab a copy and have fun!
On the Fedora wiki, you will find instructions on where to find all the bits and pieces used to construct the root file system image that's been created so far, and how to use the ARM Foundation model to do further work. And there is plenty to do :).
If you'd like to help, read through the wiki pages above and get yourself to the point where you can run the ARM Foundation model using the Fedora root file system. Then find a package needing some love and do what needs to be done for ARMv8 (the wiki explains how).
And if you have questions, you can find me (ahs3) on #fedora-arm on IRC (Freenode), or ask on this mailing list; the more, the merrier.
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
On 11/25/2012 07:14 AM, Chen Baozi wrote:
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
Please see:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64/FASTandNFS
Thanks! It would be nice to start my stage2 journey, :-)
On Nov 27, 2012, at 6:24 AM, Al Stone ahs3@redhat.com wrote:
On 11/25/2012 07:14 AM, Chen Baozi wrote:
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
Please see:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64/FASTandNFS
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
On 11/26/2012 04:24 PM, Al Stone wrote:
On 11/25/2012 07:14 AM, Chen Baozi wrote:
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
Please see:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64/FASTandNFS
I have tried to follow this using Foundation Model. To the best of my understanding the kernel commandline is built in to that linux-system-nfs-rh.axf file. I don't know how to change the nfsroot= to point to my NFS export instead of yours.
thanks, --Guy
On 11/27/2012 03:35 PM, Guy Streeter wrote:
On 11/26/2012 04:24 PM, Al Stone wrote:
On 11/25/2012 07:14 AM, Chen Baozi wrote:
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
Please see:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64/FASTandNFS
I have tried to follow this using Foundation Model. To the best of my understanding the kernel commandline is built in to that linux-system-nfs-rh.axf file. I don't know how to change the nfsroot= to point to my NFS export instead of yours.
thanks, --Guy
Correct; unfortunately, the nfsroot= is hard-coded into the .axf. Send me what you'd like the kernel command line to be and I can see about building a separate version.
Or, perhaps we can standardize on a location ... ? /srv/nfs-root or something?
On 11/27/2012 06:00 PM, Al Stone wrote:
Or, perhaps we can standardize on a location ... ? /srv/nfs-root or something?
Please do generate an image assuming something like that. /srv is the FHS location and we should encourage standards at all costs. I would recommend the subpath being something like fedora-armv8-bootstrap or similarly obnoxiously specific, but I won't bikeshed it too much :)
Then, we can do some generic instructions using a bind mount or whatever folks prefer to have that location point to wherever they actually have the bits stashed.
Jon.
On 11/27/2012 11:28 PM, Jon Masters wrote:
On 11/27/2012 06:00 PM, Al Stone wrote:
Or, perhaps we can standardize on a location ... ? /srv/nfs-root or something?
Please do generate an image assuming something like that. /srv is the FHS location and we should encourage standards at all costs. I would recommend the subpath being something like fedora-armv8-bootstrap or similarly obnoxiously specific, but I won't bikeshed it too much :)
Please keep in mind that we (in GES) will need to be able to set this up in the farm, so we probably need to include $USER in the path, or some other way to make it user-specific so we don't step on each other.
d.marlin =======
Then, we can do some generic instructions using a bind mount or whatever folks prefer to have that location point to wherever they actually have the bits stashed.
Jon.
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
please forgive my ignorance on networking. the setup 2 said "create a TUN device". but it seems only a TAP device could be connect to the bridge I create by command "brctl addif <bridge> <device>".
i'm wondering if there is the detailed about the $ ./setup-bridge.sh. it failed every time that i tried to boot by nfs, showing the following information:
VFS: Unable to mount root fs via NFS, trying floppy. VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6 Please append a correct "root=" boot option; here are the available partitions: Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0) Call trace: [<ffffffc000087568>] dump_backtrace+0x0/0x12c [<ffffffc0003a3ff0>] dump_stack+0x14/0x1c [<ffffffc0003a4240>] panic+0xe8/0x214 [<ffffffc0004c0adc>] mount_block_root+0x1c4/0x268 [<ffffffc0004c0c90>] mount_root+0x110/0x128 [<ffffffc0004c0ddc>] prepare_namespace+0x134/0x178 [<ffffffc0003a104c>] kernel_init+0x19c/0x29c
On Mon, Nov 26, 2012 at 03:24:30PM -0700, Al Stone wrote:
On 11/25/2012 07:14 AM, Chen Baozi wrote:
Any wiki about using the rootfs made by stage1 as an NFS root mount point?
Please see:
https://fedoraproject.org/wiki/Architectures/ARM/AArch64/FASTandNFS
-- ciao, al
Al Stone Software Engineer Red Hat, Inc. ahs3@redhat.com
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
I have the foundation model up and running on the nfsroot I checked out from git. I can't figure out what I'm supposed to do next to help. The instructions in Stage2Notes say
# cd /stage2 # ./stage2
When I do this it starts building glib2. I that what it's supposed to do?
--Guy
On 12/04/2012 02:01 PM, Guy Streeter wrote:
I have the foundation model up and running on the nfsroot I checked out from git. I can't figure out what I'm supposed to do next to help. The instructions in Stage2Notes say
# cd /stage2 # ./stage2
When I do this it starts building glib2. I that what it's supposed to do?
--Guy
So I needed to read a lot further down the page to understand more about this. I can touch done/glib2 to have ./stage2 start on the next package, provided it doesn't require glib2. Is there a way I can tell what the build dependencies of the subsequent packages are?
Are we just trying to get the packages to build successfully? Should they have zero warnings or just no errors? Do we need to do extensive testing on them?
thanks, --Guy
On 12/04/2012 03:24 PM, Guy Streeter wrote:
On 12/04/2012 02:01 PM, Guy Streeter wrote:
I have the foundation model up and running on the nfsroot I checked out from git. I can't figure out what I'm supposed to do next to help. The instructions in Stage2Notes say
# cd /stage2 # ./stage2
When I do this it starts building glib2. I that what it's supposed to do?
So I needed to read a lot further down the page to understand more about this. I can touch done/glib2 to have ./stage2 start on the next package, provided it doesn't require glib2. Is there a way I can tell what the build dependencies of the subsequent packages are?
Are we just trying to get the packages to build successfully? Should they have zero warnings or just no errors? Do we need to do extensive testing on them?
Basically built as close to Fedora as possible. Sometimes you'll need to turn things off, like docs, and some optional settings, but those should be documented. Scary warnings should be discussed, stuff that seems congruent with x86 is ok at this stage.
Jon.
./stage2 seems to spend a lot of time trying and failing to distribute the build using distcc, about which I know nothing. Is there a way to stop that? --Guy
The stage1 scripts build a distcc daemon for you, but if you don't have that, take the distcc lines out of the stage2 local config.
On 12/04/2012 02:26 PM, DJ Delorie wrote:
The stage1 scripts build a distcc daemon for you, but if you don't have that, take the distcc lines out of the stage2 local config.
Is there some advantage to using distcc when there are not other machines to distribute to? It looks like it's only trying to distribute to itself. This module has a single CPU, so I can't imagine how that would help. --Guy
Is there some advantage to using distcc when there are not other machines to distribute to? It looks like it's only trying to distribute to itself. This module has a single CPU, so I can't imagine how that would help.
If you build stage1, you get a cross compiler, so you distribute to your x86 host, which is many orders of magnitude faster than the simulator, especially if you have a multi-core system, where the setup distributes N builds to the real host.
On 12/04/2012 02:43 PM, DJ Delorie wrote:
Is there some advantage to using distcc when there are not other machines to distribute to? It looks like it's only trying to distribute to itself. This module has a single CPU, so I can't imagine how that would help.
If you build stage1, you get a cross compiler, so you distribute to your x86 host, which is many orders of magnitude faster than the simulator, especially if you have a multi-core system, where the setup distributes N builds to the real host.
The wiki page says "Please do work using only the ARM Foundation model." Am I missing something?
--Guy
The wiki page says "Please do work using only the ARM Foundation model." Am I missing something?
These are likely Al questions, but... perhaps that means not to use any other simulators, assuming there are any?
Also, distcc shouldn't be used for *official* Fedora RPMs, but if you're running stage2, you aren't building RPMs anyway, so it's fair to use distcc. But you need to use the cross-compiler set up for distcc in stage1, I don't know if that's feasible with the pre-built image we have (stage1 builds distcc using your host OS, so a pre-built one might not be compatible).
On 12/04/2012 03:52 PM, DJ Delorie wrote:
The wiki page says "Please do work using only the ARM Foundation model." Am I missing something?
These are likely Al questions
I can answer any of them also :) The reason it says that is because we don't want people doing cross-builds out of frustration (at the speed) or out of whatever missconceived notion otherwise well intended. Fedora is native built and that's how this is going to be done. It's ok to use distcc if setup but there have been some problems with the model network so we are currently not using that (on my todo is to investigate the network traffic and ponder hacks to fix the timestamp issues in lieu of a fix to the model itself). "Foundation Model" and "Fast Models" (the paid version) are interchangeable as far as these instructions are concerned, but we don't want to use anything else at this time. There will be real hardware in due course.
Also, distcc shouldn't be used for *official* Fedora RPMs, but if you're running stage2, you aren't building RPMs anyway, so it's fair to use distcc. But you need to use the cross-compiler set up for distcc in stage1, I don't know if that's feasible with the pre-built image we have (stage1 builds distcc using your host OS, so a pre-built one might not be compatible).
Generally, it's ok to do distcc at this stage because we're going to rebuild again, but otherwise we do want to be as native as possible.
Jon.
On 12/04/2012 08:27 PM, Jon Masters wrote:
On 12/04/2012 03:52 PM, DJ Delorie wrote:
The wiki page says "Please do work using only the ARM Foundation model." Am I missing something?
These are likely Al questions
I can answer any of them also :) The reason it says that is because we don't want people doing cross-builds out of frustration (at the speed) or out of whatever missconceived notion otherwise well intended. Fedora is native built and that's how this is going to be done. It's ok to use distcc if setup but there have been some problems with the model network so we are currently not using that (on my todo is to investigate the network traffic and ponder hacks to fix the timestamp issues in lieu of a fix to the model itself). "Foundation Model" and "Fast Models" (the paid version) are interchangeable as far as these instructions are concerned, but we don't want to use anything else at this time. There will be real hardware in due course.
/me wanders back in from vacation :)....
A little update on the network issue I keep running into with the model: it turns out the internal clock is not always updating properly so that the timestamps on network packets can get set just slightly wrong enough sometimes that the connection will hang or disconnect down at the socket level. The net result is that distcc will now and then lose the connection to the host OS doing cross-compiles. Last I heard, this is something being looked into by ARM.
And like Jon says, insisting on the use of the models is just to make sure we're as native built as possible for Fedora. If you want to use distcc, feel free, but I will rebuild using the model regardless.
Also, distcc shouldn't be used for *official* Fedora RPMs, but if you're running stage2, you aren't building RPMs anyway, so it's fair to use distcc. But you need to use the cross-compiler set up for distcc in stage1, I don't know if that's feasible with the pre-built image we have (stage1 builds distcc using your host OS, so a pre-built one might not be compatible).
Generally, it's ok to do distcc at this stage because we're going to rebuild again, but otherwise we do want to be as native as possible.
Jon.
arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
From: Al Stone ahs3@redhat.com To: arm@lists.fedoraproject.org
Sent: Monday, December 17, 2012 1:19 PM Subject: Re: [fedora-arm] ARMv8 Bootstrap Project
A little update on the network issue I keep running into with the model: it turns out the internal clock is not always updating properly so that the timestamps on network packets can get set just slightly wrong enough sometimes that the connection will hang or disconnect down at the socket level. The net result is that distcc will now and then lose the connection to the host OS doing cross-compiles. Last I heard, this is something being looked into by ARM.
I am having a similar issue with the raspi. Trying to compile the kernel via a long ssh session. It will disconnect, and sometimes even grab a different IP# usually after a number of hours.
I thought it might be a dhcp lease renew issue or a usb/ethernet adapter issue as you might suspect a different mac address too, but ntp maybe doing an update and causing the freeze. If i do an ntpdate with a newer time, it will set off the screen lock because it thinks you were idle that whole time.
Guy Streeter wrote:
./stage2 seems to spend a lot of time trying and failing to distribute the build using distcc, about which I know nothing. Is there a way to stop that?
Al suggested I use the following in my stage2/local.conf:
#J=-j12 #DISTCC_HOSTS=127.0.0.1:3639/999 # disable distcc, for now J=-j1 DISTCC_HOSTS=localhost
d.marlin ===========
--Guy _______________________________________________ arm mailing list arm@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/arm
In the process of making sure I understand all this, I gave building nss-util a go. It failed because /usr/lib doesn't exist. Should /usr/lib exist, or is the correct response to change nss-util so it uses /usr/lib64 ?
Is responding to this thread the best way to discuss this, or should it happen on chat or in the wiki?
thanks, --Guy
On 12/06/2012 01:58 PM, Guy Streeter wrote:
In the process of making sure I understand all this, I gave building nss-util a go. It failed because /usr/lib doesn't exist. Should /usr/lib exist, or is the correct response to change nss-util so it uses /usr/lib64 ?
Is responding to this thread the best way to discuss this, or should it happen on chat or in the wiki?
thanks, --Guy
So is this project already dead, or what? --Guy
On 12/14/2012 03:11 PM, Guy Streeter wrote:
On 12/06/2012 01:58 PM, Guy Streeter wrote:
In the process of making sure I understand all this, I gave building nss-util a go. It failed because /usr/lib doesn't exist. Should /usr/lib exist, or is the correct response to change nss-util so it uses /usr/lib64 ?
Is responding to this thread the best way to discuss this, or should it happen on chat or in the wiki?
So is this project already dead, or what?
Nope. We're short on cycles. I did two all-nighers this week. One was fixing the build system, the other was getting Al's filesystem in place on our in-house ARMv8 FPGA[0] platform for validation. The latter is not quite done yet. From next week, Mark will have some cycles and will assist as Al transitions into being one of our two Linaro Enterprise Group engineers (the other is Fu Wei, who just joined us this wek). David has done a great job too, he's short on cycles.
I'll have Al's filesystem running on the FPGA next week and get in place a system to regularly test it. Lots of lifting to do there. That's my priority, that and fixing the model networking glitches. I'll leave package bootstrap to a trio of Al/David/Mark - Al is on vacation this week and Mark isn't free to poke until next week.
Jon.
[0] It's now public knowledge (as of recently). I have an ARMv8 FPGA in the lab. It's not super fast, but that's not the point. It's "hardware".
On 12/14/2012 01:11 PM, Guy Streeter wrote:
On 12/06/2012 01:58 PM, Guy Streeter wrote:
In the process of making sure I understand all this, I gave building nss-util a go. It failed because /usr/lib doesn't exist. Should /usr/lib exist, or is the correct response to change nss-util so it uses /usr/lib64 ?
Is responding to this thread the best way to discuss this, or should it happen on chat or in the wiki?
thanks, --Guy
So is this project already dead, or what? --Guy
Nope, like Jon says, we were just short on cycles due to other work, or in my case some time off I'd had planned for quite some time (I probably should have announced I'd be out for a bit...my bad).
In general, there should be nothing in /usr/lib, just like with any other 64-bit Fedora distribution. On x86_64, the exception is for 32-bit libraries, aiui.
Hence, the correct response would be to change to /usr/lib64. I have not looked at the nss-util source, but if it's using standard ./configure, it should have picked up the proper paths from the stage2 script.
Hope that helps...and sorry for the delay...