On Thu, 2012-12-13 at 07:08 +0100, hermann meyer
wrote:
Am 13.12.2012 04:15, schrieb David Robillard:
> On Wed, 2012-12-12 at 21:34 +0000, Chris Cannam wrote:
>
>> On 11 December 2012 16:31, David Robillard<d(a)drobilla.net> wrote:
>>
>>> Looks like you are building against a static library. Since you are
>>> building
>>> a shared module, pedantically you can't do this
>>>
>> A static library is just a pile of object files. Of course you can
>> build a shared object against them. The problem is just that the
>> objects in this particular static library were built without PIC.
>>
> Well, yes, "pedantically" was not quite the right word. It is more of
> a
> sweeping generalization.
>
> If you're building them yourself, ensure they're PIC, and it will work,
> but it's reasonable to expect static libraries from elsewhere to be
> non-PIC, particularly things that aim to be small since PIC code is
> larger.
>
> So if I add -fPIC to the static lib build flags for libgxw/mm, it will
work on 64bit also?
Right now I prefer the static build, as long no other application or
plug use it.
Yes, you should be able to link a shared library to a static library
compiled as PIC even on 64-bit. Hence the "recompile with -fPIC"
message from the linker :)
Thanks for confirm it.
I just wonder if there will be problems as well, when linking the