On Fri, Jan 6, 2017 at 3:04 AM, Mark Millard <[email protected]> wrote:
> I have submitted a FreeBSD bugzilla entry:
>
> Bug 215821 - head -r311147's bootstrapped ld for TARGET_ARCH=powerpc64 
> produces kernel.full as a "shared object" for -pie instead of as a 
> "executable": booting the produced kernel crashes
>
> In essence what the .meta file for kernel.full shows as:
>
> CMD @ld -Bdynamic -T /usr/src/sys/conf/ldscript.powerpc64 -pie 
> --no-warn-mismatch  --warn-common --export-dynamic --dynamic-linker 
> /red/herring  -o kernel.full -X locore.o . . .
>
> (note the -pie) ends up producing:
>
> ELF 64-bit MSB shared object, 64-bit PowerPC or cisco 7500, version 1 
> (FreeBSD), dynamically linked, interpreter /red/herring, not stripped
>
> instead of what it should have produced:
>
> ELF 64-bit MSB executable, 64-bit PowerPC or cisco 7500, version 1 (FreeBSD), 
> dynamically linked, interpreter /red/herring, not stripped
>
> The differences in content leads to the powerpc64 crashing at the start of 
> the produced kernel.
>
> This means needing to use devel/binutils and/or devel/powerpc64-binutils 
> instead (at least for ld).
>
> ===
> Mark Millard
> markmi at dsl-only.net

Hi Mark,

Nathan made a change 2 years ago to build the kernel as a shared
object, so that it can be relocatable.  Looking at my kernel.full
(base gcc build):

world/zhabar/home/chmeee/freebsd/pristine/sys/ZHABAR/kernel.full: ELF
64-bit MSB shared object, 64-bit PowerPC or cisco 7500, version 1
(FreeBSD), dynamically linked, interpreter /red/herring, not stripped

- Justin
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "[email protected]"

Reply via email to