On Fri, Oct 18, 2013 at 8:57 AM, Philip Bennefall <philip@xxxxxxxxxxxx> wrote: > > I am building a shared library which will be distributed to clients in > binary form only. I am attempting to make the same binary run on as many > Linux variants as possible, and so when I build it I specify the options > -shared and -fPIC. As part of the effort of making the library as > independent as possible, I also link both the C and C++ standard libraries > statically into the final shared library. I want to do this because I use > C++11 features internally, and I don't want to force the users of my library > to have a C++11 compiler handy. > > When doing this, do I need to build libstdc++ and libgcc from source with > -fPIC as well? Or is it okay to link with the static versions of these > libraries that are provided in my Ubuntu 13.04 gcc package? On GNU/Linux the static versions of libstdc++ and libgcc are normally compiled with -fPIC, precisely to support the kind of thing you are doing. So it should work fine. Ian