Boost logo

Boost Users :

Subject: Re: [Boost-users] Static linking/GCC 4.3.2 on Linux (-fPIC missing?)
From: Vladimir Prus (vladimir_at_[hidden])
Date: 2009-03-08 01:47:52


Anteru wrote:

> Vladimir Prus schrieb:
>> Static libraries were always built without -fPIC and I don't think there
>> was any change in this area.
> Ok, I wasn't sure either, but I don't remember setting it with Boost 1.37.
>
>>> The environment is Linux with GCC 4.3.2, on x64.
>>
>> Any chance you just recently upgraded to an x64 system? On x64, it's all or nothing,
>> you cannot mix PIC and non-PIC code.
>
> No, it was x64 before as well, same system. And I'm sure I used -fPIC on
> all of my code.
>
> Thinking about this, shouldn't be -fPIC enabled on Linux/x64 by default?

I am not sure -- if gcc does not enable -fPIC in this configuration, why
Boost.Build should second-guess it?

> Otherwise, you can't link Boost

This is not an issue specific to Boost.

> statically into a .so without changing
> the build parameters. Or are there any negative effects by enabling -fPIC?

-fPIC generates slower code. I am not aware of up-to-date data on how much slower.

- Volodya


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net