You are not logged in.

#51 2010-01-09 00:31:20

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Pierre wrote:

Wouldn't it be easier to bootsrap from e.g. Debian? Build some initial packages, install them into a chroot etc..

Possibly, but the last time I tried the Debian Hurd install was a pain.  And I should be able to cross-compile from any Unix like OS... it is the whole point of all the complexity in the toolchain and I want to do so!  tongue

Offline

#52 2010-01-09 00:48:48

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Allan wrote:

Edit: I noticed a couple of errors in the script, but it is late and I need sleep.  Expect a new version tomorrow.

http://allanmcrae.com/scripts/crosshurd.sh - Updated just to fix those minor bugs.

Working on updating gccand binutils to their latest versions today.

Offline

#53 2010-01-09 01:16:31

flamelab
Member
From: Athens, Hellas (Greece)
Registered: 2007-12-26
Posts: 2,160

Re: The Arch Hurd Project

Oh, some 404:

--2010-01-09 03:16:01--  http://ftp.gnu.org/gnu/gcc/gcc-core-4.1.2.tar.bz2
Resolving ftp.gnu.org... 140.186.70.20
Connecting to ftp.gnu.org|140.186.70.20|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2010-01-09 03:16:01 ERROR 404: Not Found.

--2010-01-09 03:16:01--  http://ftp.gnu.org/gnu/gcc/gcc-g++-4.1.2.tar.bz2
Resolving ftp.gnu.org... 140.186.70.20
Connecting to ftp.gnu.org|140.186.70.20|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2010-01-09 03:16:02 ERROR 404: Not Found.

tar: gcc-core-4.1.2.tar.bz2: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: gcc-g++-4.1.2.tar.bz2: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

(with your crosshurd script)

Offline

#54 2010-01-09 01:22:19

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

I was trying to be cleaver and prevent redownloading sources I already had so that was not so well tested...   tongue

Change lines 49 and 53 to:

  wget http://ftp.gnu.org/gnu/gcc/gcc-$GCC_VER/<...>

Not literally.... but you should get the idea.

Offline

#55 2010-01-09 01:30:54

flamelab
Member
From: Athens, Hellas (Greece)
Registered: 2007-12-26
Posts: 2,160

Re: The Arch Hurd Project

Allan wrote:

I was trying to be cleaver and prevent redownloading sources I already had so that was not so well tested...   tongue

Change lines 49 and 53 to:

  wget http://ftp.gnu.org/gnu/gcc/gcc-$GCC_VER/<...>

Not literally.... but you should get the idea.

Better big_smile Continuing big_smile

vMzc5OQ


---

Hmm let's see...


-----

It doesn't support x86_64 ? Which CHOST target should I choose ?

TARGET=x86_64-pc-gnu ?

Last edited by flamelab (2010-01-09 01:39:47)

Offline

#56 2010-01-09 02:01:08

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

No idea if you can even get a 64-bit hurd.   I have never seen one.  Try and see but I am not hopeful...  You can build for 32-bit hurd.

Offline

#57 2010-01-09 02:51:20

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

gcc-4.2/4.3 do not build for hurd:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28102

gcc-4.4 fails linking in stage2 (it can not find libc for some weird reason...  it definitely is right there).

So updating gcc to a newer version is not so fun.

Edit: I can get glibc building against binutils-2.20 with a sed to the configure but then I end up with linking errors.  I guess we would need a newer glibc/gcc version for the new binutils...

So, I am going to get this building for i686-pc-gnu and move on.

Offline

#58 2010-01-09 07:37:56

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

And that fails.  Building for i686-pc-gnu results in this failure in glibc:

/home/allan/hurd/build/glibc/rt/librt_pic.a(clock_settime.os): In function `clock_settime':
clock_settime.c:(.text+0x3c): undefined reference to `CPUCLOCK_WHICH'
clock_settime.c:(.text+0x4c): undefined reference to `CPUCLOCK_WHICH'
collect2: ld returned 1 exit status
make[2]: *** [/home/allan/hurd/build/glibc/rt/librt.so] Error 1

I can not find a fix for that.  So this cross-compile environment is about as good as it will get.

Offline

#59 2010-01-09 13:15:07

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Made a couple of small updates to the script.  I noticed some errors in how I handled downloading the sources only once.


Edit: looking at the next step, we can reuse the gnumach-headers, hurd-headers, libpthread and glibc if we install them in a different directory.  CLFS uses "cross-tools" for native binaries and "tools" for cross binaries.  We should try something like that too.  The current script produces a cross compiler that is too naive to use for building a final system...

But after the packages already built, we only really need to build gnumach, hurd, coreutils and bash to boot our system tongue   Of course, we need a lot more for that system to be useful for packaging...

Offline

#60 2010-01-09 18:47:06

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

I give you… http://www.archhurd.org!

There's still quite a bit to do (for example; the placeholder logo looks rubbish), and the repositories are empty, but it's a start smile

Repositories: http://repo.archhurd.org/
Git: http://projects.archhurd.org
ML: http://lists.archhurd.org

Though unfortunately I won't have much time to do Arch Hurd stuff over the next few weeks due to exams sad

Last edited by Barrucadu (2010-01-09 18:49:09)

Offline

#61 2010-01-09 19:45:06

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,000
Website

Re: The Arch Hurd Project

what are the advantages for end users?  for kernel hackers i can understand interest in Hurd, but for others?


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#62 2010-01-09 22:52:09

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Dieter@be wrote:

what are the advantages for end users?  for kernel hackers i can understand interest in Hurd, but for others?

An easy way to try Hurd out.

Offline

#63 2010-01-09 23:44:20

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

Dieter@be wrote:

what are the advantages for end users?  for kernel hackers i can understand interest in Hurd, but for others?

Something doesn't need to have advantages to be fun tongue

Offline

#64 2010-01-10 10:05:12

thoughtcrime
Member
Registered: 2008-09-27
Posts: 156
Website

Re: The Arch Hurd Project

Barrucadu wrote:

I give you… http://www.archhurd.org!

There's still quite a bit to do (for example; the placeholder logo looks rubbish), and the repositories are empty, but it's a start smile

Repositories: http://repo.archhurd.org/
Git: http://projects.archhurd.org
ML: http://lists.archhurd.org

Though unfortunately I won't have much time to do Arch Hurd stuff over the next few weeks due to exams sad

Subscribed to the RSS feed. I think the logo looks a bit lame, but other than that: good job big_smile

EDIT: ...and there's no favicon yet.
EDIT2: Time for another logo contest, amirite? big_smile

Last edited by thoughtcrime (2010-01-10 10:12:25)


- blog (about arch and other stuff): http://thoughtyblog.wordpress.com/
- x86_64 user

Offline

#65 2010-01-10 10:18:05

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Another day...  more progress:
http://allanmcrae.com/scripts/crosshurd.tar.gz

Changes:
- directory layout
    $ROOT/cross - cross compiler (host system) binaries
    $ROOT/hurd - GNU system install
- scripts
    separated into individual scripts to build individual parts
- started building more of the GNU system (gnumach kernel success, hurd fail...)

The hurd build fails due to needing a newer glibc.  But given the patchset is only for glibc-2.7....    I could revert the relevant commit but I have sent a message to the hurd mailing list to find out if there is a better way.

Offline

#66 2010-01-11 11:54:53

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

BIG UPDATE!

Changes 20100111:

updates:
  glibc 2.7 -> 2.10.1
  gcc 4.1.2 -> 4.4.2

new cross compiles:
  hurd (from git)
  coreutils-8.3 added
  bash-4.1 added
the last two before those packages make Arch!  (I am waiting on coreutils-8.4...).


If people want to help, what they could do is:
- try update to binutils-2.20 (uncomment the sed in glibc-pass1) - I anticipate no issues.
- try rebuilding for i686-pc-gnu adding this patch in glibc-pass1: http://patch-tracker.debian.org/patch/s … ttime.diff
- create a script to cross compile grub (0.97? - may be easier to deal with initially trying to get a booting system).
- and if you are really, really, really brave...  try glibc-2.11.1 (update patches, look to Debian Sid eglibc package for new ones)

If you are trying to update binutils or the target, it is easier to source the files in the script directory one at a time to catch errors rather that using the makeall script.


I will now put all tarballs in http://allanmcrae.com/hurd/ with a date so just download the latest.

Offline

#67 2010-01-11 16:12:09

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

Grub 0.97 build script:

#!/bin/bash

cd $SOURCE_DIR
if [ ! -f grub-$GRUB_VER.tar.gz ]; then
  wget ftp://alpha.gnu.org/gnu/grub/grub-$GRUB_VER.tar.gz
fi

cd $BUILD_DIR
rm -rf grub-$GRUB_VER
tar -xf $SOURCE_DIR/grub-$GRUB_VER.tar.gz

rm -rf grub-build
mkdir -p grub-build
cd grub-build

../grub-$GRUB_VER/autogen.sh
../grub-$GRUB_VER/configure \
  --host=$TARGET \
  --prefix=/usr
make DESTDIR=$HURD_DIR install

cd $ROOT

Also, add a line to ./scripts/prepare:

GRUB_VER=0.97

edit: Works! Anybody feel like working on GRUB2? tongue

Last edited by Barrucadu (2010-01-11 18:38:31)

Offline

#68 2010-01-11 17:44:43

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

Trying to update binutils (after uncommenting that sed line) results in this error in glibc pass 2:

/root/hurd/cross/lib/gcc/i586-pc-gnu/4.4.2/../../../../i586-pc-gnu/bin/ld: cannot find -lgcc

Offline

#69 2010-01-11 19:00:17

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

Allan, if you want git/ssh access to archhurd.org to store the build scripts, send me an email.

thoughtcrime wrote:

Subscribed to the RSS feed. I think the logo looks a bit lame, but other than that: good job big_smile

EDIT: ...and there's no favicon yet.
EDIT2: Time for another logo contest, amirite? big_smile

Ooh, didn't notice this post… I think I'll wait until we have something which can boot first

Last edited by Barrucadu (2010-01-11 21:25:18)

Offline

#70 2010-01-11 22:06:14

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Barrucadu wrote:

Trying to update binutils (after uncommenting that sed line) results in this error in glibc pass 2:

/root/hurd/cross/lib/gcc/i586-pc-gnu/4.4.2/../../../../i586-pc-gnu/bin/ld: cannot find -lgcc

That tells me the failure is really in gcc-pass2.   Comment everything from the make statements down in the gcc-pass2 script and then run those  commented commands manually to see the real breakage.

Offline

#71 2010-01-12 01:00:41

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Barrucadu wrote:

Grub 0.97 build script:
<snip>

Looks good.  Removed the "autogen.sh" line because that script does not actually exist in the tarball...


Barrucadu wrote:

Allan, if you want git/ssh access to archhurd.org to store the build scripts, send me an email.

Possibly...  I am happy just pushing updates to that folder on my website as work gets done.  I'm not so sure git needs used for this early stage.

Offline

#72 2010-01-12 08:27:06

Barrucadu
Member
From: York, England
Registered: 2008-03-30
Posts: 1,158
Website

Re: The Arch Hurd Project

Allan wrote:

Looks good.  Removed the "autogen.sh" line because that script does not actually exist in the tarball...

Oops, a leftover from when I initially tried Grub 2.

Offline

#73 2010-01-12 08:29:59

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Allan wrote:

If people want to help, what they could do is:
...
- try rebuilding for i686-pc-gnu adding this patch in glibc-pass1: http://patch-tracker.debian.org/patch/s … ttime.diff

That is not enough.  I am emailing the hurd-bugs list to see what can be done to fix it (I have a major hack that "fixes" the issue).

Offline

#74 2010-01-12 13:10:22

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: The Arch Hurd Project

Update: 20100112

Changes:
- Build for i686-pc-gnu.  Thanks to Samuel Thibault on the bug-hurd mailing list for providing part of a patch to allow this.
- Added grub(-legacy).

I think we actually have enough packages for a bootable system now...  but there are still a lot of config files missing (and maybe a text editor would be nice!). You can get some idea of what is needed from here (in French) .  Also the Debian install page provides info on setting up the partition.

I do not have a spare partition at the moment so I will be using a qemu image. It seem it will be essentially make the image, make filesystem on image, mount image to $ROOT/hurd, build...  The image has to be in .img format for the mounting but I think it can be converted to the smaller .qcow2 format after the install.  I guess we can provide an image as our first step into a real Arch Hurd!

Offline

#75 2010-01-12 13:23:08

flamelab
Member
From: Athens, Hellas (Greece)
Registered: 2007-12-26
Posts: 2,160

Re: The Arch Hurd Project

h, Allan, can you also ask him if there is a possibility for a x86_64 Hurd ... ? big_smile

Offline

Board footer

Powered by FluxBB