Control: retitle -1 mlton needs PIE bootstrap
On Tue, Oct 25, 2016 at 05:14:00PM +0000, Niels Thykier wrote:
> On Mon, 24 Oct 2016 20:18:39 +0300 Adrian Bunk <[email protected]> wrote:
> > Control: retitle -1 mlton needs PIE binNMU
> >
> > A binNMU should be sufficient to fix this, and already requested.
> >
> > cu
> > Adrian
> >
> > [...]
>
> The rebuild with PIE failed with:
>
>
> """
> > "/«PKGBUILDDIR»/bin/upgrade-basis"
> > '/«PKGBUILDDIR»/build/bin:/«PKGBUILDDIR»/build/bin:/«PKGBUILDDIR»/bin:/«PKGBUILDDIR»/build/bin:/«PKGBUILDDIR»/bin:/«PKGBUILDDIR»/build/bin:/«PKGBUILDDIR»/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
> > "amd64" "linux" >upgrade-basis.sml
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(platform.o): relocation
> > R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared
> > object; recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(gc.o): relocation
> > R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared
> > object; recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(bug.o): relocation
> > R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared
> > object; recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(Stat.o): relocation
> > R_X86_64_32 against `.bss' can not be used when making a shared object;
> > recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(util.o): relocation
> > R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared
> > object; recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libmlton.a(linux.o): relocation
> > R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared
> > object; recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(strtof.o): relocation
> > R_X86_64_32 against `.data' can not be used when making a shared object;
> > recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(strtodg.o): relocation
> > R_X86_64_32S against `.rodata' can not be used when making a shared object;
> > recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(gethex.o): relocation
> > R_X86_64_32S against hidden symbol `hexdig_D2A' can not be used when making
> > a shared object
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(hd_init.o): relocation
> > R_X86_64_32 against `.LC2' can not be used when making a shared object;
> > recompile with -fPIC
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(hexnan.o): relocation
> > R_X86_64_32S against hidden symbol `hexdig_D2A' can not be used when making
> > a shared object
> > /usr/bin/ld: /usr/lib/mlton/targets/self/libgdtoa.a(misc.o): relocation
> > R_X86_64_32S against `.bss' can not be used when making a shared object;
> > recompile with -fPIC
> > /usr/bin/ld: final link failed: Nonrepresentable section on output
> > collect2: error: ld returned 1 exit status
> > call to system failed with exit status 1:
> > gcc -o 3960 /tmp/filefof008.o /tmp/fileOrbJsr.o
> > -L/usr/lib/mlton/targets/self -lmlton -lgdtoa -lm -lgmp -m64
> > -Wl,-znoexecstack
> > Error: cannot upgrade basis because the compiler doesn't work
> > Makefile:83: recipe for target 'upgrade-basis.sml' failed
> """
>
> Are we missing something that should have been rebuilt first?
You have to rebuild mlton before you can rebuild mlton?
This needs some PIE bootstrapping, and the patch from Ubuntu I tried was
not sufficient.
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed