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

Re: Problem with arm64: mcmodel=large and fPIC



On 2016-12-15 15:41 +0000, Wookey wrote:
> On 2016-12-15 15:16 +0000, Alastair McKinstry wrote:

> > gfortran -c -O2 -mcmodel=large -O2 -fdefault-real-8
> > -fconvert=little-endian -frecord-marker=4 -I/usr/include par_mod.f90
> > f951: sorry, unimplemented: code model 'large' with -fPIC
> > 
> > Notice that fPIC is not set on the command line.
> > Any ideas on how to proceed?
> 
> I believe that the compiler default was recently changed to be fPIC on
> several arches, including arm64, which is presumably why you have
> started seeing this. I guess we should either turn fPIC off for this
> build or teach gfortran to deal with this 'large' model.

This is the transition  I had in mind:
https://wiki.debian.org/Hardening/PIEByDefaultTransition

And if I understand
https://wiki.debian.org/Hardening#DEB_BUILD_HARDENING_PIE_.28gcc.2Fg.2B-.2B-_-fPIE_-pie.29
properly, this (PIE) is effectively setting -fPIC on all binaries, not just
shared libraries, which have been doing it for some time.

But I could just be confused here and this is a complete red herring.

Wookey
-- 
Principal hats:  Linaro, Debian, Wookware, ARM
http://wookware.org/

Attachment: signature.asc
Description: Digital signature


Reply to: