bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Developer environment setup problem


From: Milos Nikic
Subject: Re: Developer environment setup problem
Date: Mon, 16 Jun 2025 21:25:21 -0700

Hello

Thanks folks, I appreciate any help you guys can provide.

Yes I used the pristine gnumach and mig. Just cloned and pulled again today.

I compiled gnumach on my Linux Arch (cross compiled?).  With a script from compile-scratch.sh
Then I ran 
$ make tests/test-task.iso (from my build directory).
The thing didn't even compile correctly:

/usr/bin/ld: /tmp/ccYq0CRM.o: in function `test_task':
/home/user/Projects/hurd/gnumach/build/../tests/test-task.c:57:(.text+0x27e): undefined reference to `__stack_chk_fail_local'

Full log:

Mig is present:
$ which mig
/home/user/gnu/bin/mig
$ mig --version
i686-gnu-mig (GNU MIG) 1.8


And inside hurd it looked like this:


$ cd gnumach 
$ git fetch origin
$ git reset --hard origin/master
$ autoreconf -i
$ mkdir build
$ cd build
$ ../configure --host=i686-gnu CC='gcc -m32'
$ make gnumach.gz
$ make tests/test-task.iso
Lots of errors, such as:
../tests/test-task.c:28:10: fatal error: gnumach.user.h: No such file or directory
   28 | #include <gnumach.user.h>

Full output

Mig is present:
$ which mig
/usr/bin/mig
$ mig --version
mig (GNU MIG) 1.8

Apologize for the details, I highly suspect that I am doing something wrong here.
Thanks in advance.


On Mon, Jun 16, 2025 at 6:39 PM Diego Nieto Cid <dnietoc@gmail.com> wrote:
Hello,

On Mon, Jun 16, 2025 at 08:10:13AM -0700, Milos Nikic wrote:
> Hello,
>
> Thanks for the email.
> The thing is I am not cross compiling. I am instead compiling from inside
> Hurd (in Qemu).
> Yet cannot seem to get it quite right (even though it compiles
> successfully inside Hurd, when I copy it to /boot it panics on the next
> reboot).
>

The pristine gnumach sources should work. You can check whether it's a bug or
just a configuration issue by running the test suit.

For instance, you can build the task tests with the following command from
your build tree:

    $ make tests/test-task.iso

You can then run the test from a GNU/Linux box (after copying over the iso file)
by running the ISO in quemu:

    $ qemu-system-x86_64 -m 2048 -nographic -no-reboot -boot d -cdrom test-task.iso

It will book QEMU and produce some output and the following line at the end:

    gnumach-test-success-and-reboot: test module-task exit code 0

Keep us updated of how it goes :)

Cheers,
Diego

reply via email to

[Prev in Thread] Current Thread [Next in Thread]