[Ohrrpgce] Can't compile 64-bit hspeak on the nightly build vm

Ralph Versteegen teeemcee at gmail.com
Sat Dec 16 16:00:59 PST 2017


-no-pie is actually passed by SConscript.  I can't find any mention in my
emails about a -no-pie problem on debian. The problem we had was that
-no-pie was supported (nor necessary) for clang on OSX.

The -no-pie flag was added in r9542:
"""
scons: Fix hspeak builds on Arch Linux and others where gcc defaults to PIE

The Euphoria 4.1 builds we recommend (and which are also used by the Arch
opeeuphoria package on AUR) haven't been built for PIE
"""
Apparently this flag is also necessary on (recent?) Debian and Ubuntu, as
they also default to PIE.

It's not clear, but from searching around it appears that this flag used to
be called -nopie until gcc 6 switched to -no-pie. So try that. I have the
man page for gcc 4.8 here, and it doesn't say either way.
Also, there is -fno-pie which is a compiler flag while -no-pie is a linker
flag (also understood by gcc). So you could also try that and see whether
it works. (I assume that -no-pie passed to gcc implies -fno-pie)

On 16 December 2017 at 12:32, James Paige <Bob at hamsterrepublic.com> wrote:

> So now I remember why I have the 32-bit version of Euphoria installed on
> the Linux nightly build machine.
>
> The hspeak build fails because gcc doesn't understand --no-pie
>
>
> gcc -o /home/james/src/ohr/wip/hspeak init-.o hspeak.o main-.o hspeak_0.o
> hspeak_1.o hspeak_2.o hspeak_3.o hspeak_4.o hsspiffy.o file.o sort.o get.o
> graphics.o machine.o math.o types.o unicode.o ucstypes.o io_with_unicode.o
> 0achine.o memory.o dll.o  /usr/share/euphoria/bin/eu.a -m64 -ldl -lm
> -lpthread -no-pie
> gcc: error: unrecognized command line option '-no-pie'
> hspeak.mak:97: recipe for target '/home/james/src/ohr/wip/hspeak' failed
> make: *** [/home/james/src/ohr/wip/hspeak] Error 1
> make: Leaving directory '/home/james/src/ohr/wip/build/hspeak'
> scons: done building targets.
> james at ixrat:~/src/ohr/wip$ euc -v
> Euphoria to C Translator v4.1.0 development
>    64-bit Linux, Using System Memory
>    Revision Date: 2015-02-02 14:18:53, Id: 5861:57179171dbed
> james at ixrat:~/src/ohr/wip$ gcc --version
> gcc (Debian 4.9.2-10) 4.9.2
> Copyright (C) 2014 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
>
> I am wondering if the easiest way to resolve this might be to upgrade the
> virtual machine from Debian 8.x to 9.x and hopefully get a version of gcc
> that does not have this problem.
>
> For now, I am leaving the 64-bit version of euphoria installed on the vm,
> so the 64-bit nightly builds are going to remain broken until I have
> figured out a solution.
>
> ---
> James
>
> _______________________________________________
> Ohrrpgce mailing list
> ohrrpgce at lists.motherhamster.org
> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.motherhamster.org/pipermail/ohrrpgce-motherhamster.org/attachments/20171217/ef76b359/attachment.html>


More information about the Ohrrpgce mailing list