Login
Username:

Password:

Remember me



Lost Password?

Register now!
Main Menu
Who is Online
72 user(s) are online (7 user(s) are browsing Forum)

Members: 0
Guests: 72

more...


Browsing this Thread:   1 Anonymous Users




« 1 2 (3)


Re: Unable to link i386 bootstrap on Fedora 28
#8
Home away from home
Home away from home


See User information
i think dizzy can submit patches to svn if he chooses so, but let us crosstest in advance, in order not to break other hosts, please.

Posted on: 2018/8/18 19:34
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#7
Not too shy to talk
Not too shy to talk


See User information
I think I can help here...



1) to solve the grub2 build issues for Fedora 28/29 below and above. Please use the contents of this link:

https://pastebin.com/raw/9Ws99C9y

The new glibc split some types and therefore grub2 isn't able to find some symbols after linking. Such as makedev and something else. To solve this some includes got added, so that the symbols can be resolved. A better approach would be to improve the configure script to search for this new feature.

Some structures complain because they are not aligned. That's what the initial thread opener rightfully figured out. This has been solved in various distributions but not in Aros. The patch contains a few packaged alignment to put the structures at the correct addresses.

This stuff has been tested and grub2 builds correctly using gcc 8.[1|2[.x on Fedora.



2) I removed my testscript above because this forum made a mess out of it :)

You can grab the script here:

(deleted: look at the latest in further comments)

... oh and I don't have any access to git or svn anymore ;)

Posted on: 2018/8/18 13:39

Edited by oGALAXYo on 2018/8/18 21:26:25
Edited by oGALAXYo on 2018/9/18 18:00:11
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#6
Not too shy to talk
Not too shy to talk


See User information
Please note that I haven't touched AROS for over a decade now. Yesterday night was the first time, that I compiled AROS from sources and my hardware isn't the fastest.

The libc issue is not what concerns me. The grub2 issue is more.

As @Dizzy stated, the grub2 is probably being build using the hosts gcc. On Fedora 28 that is gcc 8.1.x and for Fedora that is gcc 8.2.x.

I looked at the grub2 spec file from Fedora and realized that they are doing heavy patches to grub2 to get things compiling again on multiple architectures. They also committed a shitload of patches, so gcc 8.x can be used to get grub2 compiled.

The version bundled with AROS seem to be an older version of grub2, so the patches can't easily be applied. Not to mention that I don't really know yet what to do because things are still compiling here.

The script that I posted earlier are there, so the steps for the failures can be reproduced. Once the things are reproducable, you can go on the next step and try fixing it.

Possible backport of grub2 gcc8 patch is this:

https://patchwork.openembedded.org/patch/150595/

https://src.fedoraproject.org/rpms/grub2/blob/master/f/0152-Fixup-for-newer-compiler.patch
https://src.fedoraproject.org/rpms/grub2/blob/master/f/0157-Fixup-for-newer-compiler.patch

Not tested any of that yet...

Posted on: 2018/8/18 10:07
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#5
Quite a regular
Quite a regular


See User information
Why not go into the makefile and sort the changes and post it? Maybe I'm mistaken but from what I understand it's simply an issue of libc having a different location on Fedora 29..

Posted on: 2018/8/18 9:48
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#4
Not too shy to talk
Not too shy to talk


See User information
I also confirm the issues with grub2.

Here are the steps to reproduce the issues on Fedora 28 (as it seems) and Fedora 29 (what will become Fedora 29) x86_64

Edit: Please refer to a further comment below...

Posted on: 2018/8/18 6:46

Edited by oGALAXYo on 2018/8/18 7:41:36
Edited by oGALAXYo on 2018/8/18 13:30:43
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#3
Not too shy to talk
Not too shy to talk


See User information
This one caught my attention and therefore I decided to give it a go myself.

I don't think that your setup is the cause.

I run Fedora 29 (what will become Fedora 29) and the arch is the same as yours and I ran into the same issue that you described. -lc not found!

The solution (or workaround) that you described (copying libc.a into said directory) solved further linking for me.

Just wanted to let you know about this.

Maybe some further investigation is needed because Fedora is a quick changing system and the core gcc developers are also Fedora users. Maybe it's related to the fact that the file is called libc_nonshared.a rather than libc.a on the host system. However, I haven't testet any further nor do I know much about the mmakefile magic found inside AROS :)

Posted on: 2018/8/17 21:29
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Re: Unable to link i386 bootstrap on Fedora 28
#2
Home away from home
Home away from home


See User information
It seems the problem is in my setup. Host GCC 8.1.1 for some reason would like to link against libc. It can't also build our grub2 version as there are warnings about non aligned packet structure. For now I've edited the configure script for not to use host gcc and it seems to work. Managed to build the bootiso but not tested. Also cerrors is empty in gen dir.

EDIT: Tested the bootiso and it does indeed work. Out of interest what's the reasoning for using host gcc to compile the bootstrap and grub2? As it seems to build just fine with the gcc-6.3.0 cross compiler.

Posted on: 2018/8/14 14:54

Edited by DizzyOfCRN on 2018/8/14 16:12:29
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 


Unable to link i386 bootstrap on Fedora 28
#1
Home away from home
Home away from home


See User information
Hi,

I just tried building i386-pc (ABIv1) on my Fedora 28 and it just doesn't work anymore.

I get this:

[MMAKE] Making kernel-bootstrap-pc in arch/all-pc/bootstrap
Linking gen/arch/all-pc/bootstrap/vesa.bin.o...
Linking AROS/boot/pc/bootstrap...
Link failed: /usr/lib64/ccache/gcc -Wl,-melf_i386 -m32 /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/bootstrap.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/memory_io.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/multiboot1.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/multiboot2.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/support.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/vesa_setup.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/arch/cpu.o /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/arch/all-pc/bootstrap/vesa.bin.o -o /home/dizzy/AROS.i386_trunk/bin/pc-i386/AROS/boot/pc/bootstrap -m32 -Wl,-N,-e,kernel_bootstrap -Wl,-Map,/home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/boot/bootstrap-pc.map -Wl,-T,/home/dizzy/AROS_trunk/arch/all-pc/bootstrap/ldscript.lds -static-libgcc -L/home/dizzy/AROS.i386_trunk/bin/pc-i386/AROS/Developer/lib -L/home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/lib -nostartfiles -lbootstrap -lbootconsole -lstdc.static
/usr/bin/ld: cannot find -lc
collect2: error: ld returned 1 exit status
make[1]: *** [mmakefile:467: /home/dizzy/AROS.i386_trunk/bin/pc-i386/AROS/boot/pc/bootstrap] Error 1
[MMAKE] make --no-print-directory TOP=/home/dizzy/AROS.i386_trunk SRCDIR=/home/dizzy/AROS_trunk CURDIR=arch/all-pc/bootstrap TARGET=kernel-bootstrap-pc --file=mmakefile kernel-bootstrap-pc failed: 512
[MMAKE] Error: Error while running make in arch/all-pc/bootstrap: No such file or directory
make: *** [Makefile:282: bootiso] Error 10
AROS compiled in 501 seconds

I-ve build a crosscompiler (4.6.xxx) but it seems that for the bootstrap it tries to use host gcc for linking? (/usr/bin/ld)

I get the bootstrap to link if I just copy any lib to /home/dizzy/AROS.i386_trunk/bin/pc-i386/gen/lib and rename it to "libc.a"...

Fedora 28 is 64-bit on my machine.

Posted on: 2018/8/12 9:04
 Top  Twitter  Facebook  Google Plus  Linkedin  Del.icio.us  Digg  Reddit  Mr. Wong 




« 1 2 (3)



You can view topic.
You cannot start a new topic.
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[Advanced Search]


Search
Top Posters
1 paolone
paolone
4462
2 nikolaos
nikolaos
4206
3 magorium
magorium
4095
4 phoenixkonsole
phoenixkonsole
3942
5 deadwood
deadwood
2917
6 ncafferkey
ncafferkey
2810
7 mazze
mazze
2222
8 Kalamatee
Kalamatee
2212
9 clusteruk
clusteruk
2114
Powered by XOOPS © 2001-2025 The XOOPS Project