~alpine/users

4 2

issue building a dynamic library and using it

Riccardo Mottola <riccardo.mottola@libero.it>
Details
Message ID
<52090166-eb5d-3a84-c2ab-eced6695e2a6@libero.it>
DKIM signature
missing
Download raw message
Hi,

I have an issue where GNUstep base does not finish building. 
Essentially, I end with a library that is not being able to be linked 
against the tools.

One think I notice is that on Alpine, I only get a ".a" object created:
./Source/obj/libgnustep-base.a

While on regular linux I get:
./Source/obj/libgnustep-base.so
./Source/obj/libgnustep-base.so.1.28
./Source/obj/libgnustep-base.so.1.28.0

So... I am getting a static library even if I want a shared one, I 
suppose. Do I need some special magic? The gnustep build system is a 
little bit complicated, but supports linux & bsd well.

Thanks,
Riccardo
Details
Message ID
<CNOL3JV8X237.3L7DY85Z6IKQ5@sumire>
In-Reply-To
<52090166-eb5d-3a84-c2ab-eced6695e2a6@libero.it> (view parent)
DKIM signature
missing
Download raw message
On Tue Oct 18, 2022 at 1:15 AM CEST, Riccardo Mottola wrote:
> Hi,
>
> I have an issue where GNUstep base does not finish building. 
> Essentially, I end with a library that is not being able to be linked 
> against the tools.
>
> One think I notice is that on Alpine, I only get a ".a" object created:
> ./Source/obj/libgnustep-base.a
>
> While on regular linux I get:
> ./Source/obj/libgnustep-base.so
> ./Source/obj/libgnustep-base.so.1.28
> ./Source/obj/libgnustep-base.so.1.28.0
>
> So... I am getting a static library even if I want a shared one, I 
> suppose. Do I need some special magic? The gnustep build system is a 
> little bit complicated, but supports linux & bsd well.
this entirely sounds like the gnustep build system doing something
wrong, so you have to figure out what that is. maybe it's just a
configure argument (--enable-shared --disable-static , etc)
>
> Thanks,
> Riccardo
Riccardo Mottola <riccardo.mottola@libero.it>
Details
Message ID
<49128a70-b1b1-a89a-e8cb-7986cea8faff@libero.it>
In-Reply-To
<CNOL3JV8X237.3L7DY85Z6IKQ5@sumire> (view parent)
DKIM signature
missing
Download raw message
Hi,

alice wrote:
>> So... I am getting a static library even if I want a shared one, I
>> suppose. Do I need some special magic? The gnustep build system is a
>> little bit complicated, but supports linux & bsd well.
> this entirely sounds like the gnustep build system doing something
> wrong, so you have to figure out what that is. maybe it's just a
> configure argument (--enable-shared --disable-static , etc)

gnustep's make builds shared by default, at least on other linux systems.

As you suggested, I "forced" a shared build issuing
make shared=yes
But it does not help.


There are some quirks, for example, I explicitly need to configure with:
--with-ffi-library=/usr/lib

I'm not used to it: stuff in /usr/lib is usually found automatically. I 
wonder if this is a hint.

Riccardo
Riccardo Mottola <riccardo.mottola@libero.it>
Details
Message ID
<6a06b408-ebc5-ac77-5baf-17e2799fb723@libero.it>
In-Reply-To
<CNOL3JV8X237.3L7DY85Z6IKQ5@sumire> (view parent)
DKIM signature
missing
Download raw message
Hi!


alice wrote:
>> So... I am getting a static library even if I want a shared one, I 
>> suppose. Do I need some special magic? The gnustep build system is a 
>> little bit complicated, but supports linux & bsd well.
> this entirely sounds like the gnustep build system doing something
> wrong, so you have to figure out what that is. maybe it's just a
> configure argument (--enable-shared --disable-static , etc)

Shared is default for the gnustep make system.
I still have an older laptop with Alpine Linux still running 3.15 and
which I didn't use for a year and which had GNUstep running. Proof it
worked! First thing, I updated GNUstep and it fails on 3.15 as on 3.16,
so I'd exclude logically that it is the new release of Alpine, but
something changed on GNUstep.

As a proof, then I tried bisecting and was able to proove that the issue
is in the GNUstep make system, a requisite of the later libraries which
use it.

The breaking commit is this:

https://github.com/gnustep/tools-make/commit/0dee9266100ff65809c0c4ee7d2e6fcadb6c6b08

which corresponds to an update of the configure system. I see nothing
wrong. Do you see something? Are you aware of issues with 2.71 autoconf?

Riccardo
Details
Message ID
<CNXO64HT29X6.2MNW0TI2SRW11@sumire>
In-Reply-To
<6a06b408-ebc5-ac77-5baf-17e2799fb723@libero.it> (view parent)
DKIM signature
missing
Download raw message
On Fri Oct 28, 2022 at 2:31 PM CEST, Riccardo Mottola wrote:
> Hi!
>
>
> alice wrote:
> >> So... I am getting a static library even if I want a shared one, I 
> >> suppose. Do I need some special magic? The gnustep build system is a 
> >> little bit complicated, but supports linux & bsd well.
> > this entirely sounds like the gnustep build system doing something
> > wrong, so you have to figure out what that is. maybe it's just a
> > configure argument (--enable-shared --disable-static , etc)
>
> Shared is default for the gnustep make system.
> I still have an older laptop with Alpine Linux still running 3.15 and
> which I didn't use for a year and which had GNUstep running. Proof it
> worked! First thing, I updated GNUstep and it fails on 3.15 as on 3.16,
> so I'd exclude logically that it is the new release of Alpine, but
> something changed on GNUstep.
>
> As a proof, then I tried bisecting and was able to proove that the issue
> is in the GNUstep make system, a requisite of the later libraries which
> use it.
>
> The breaking commit is this:
>
> https://github.com/gnustep/tools-make/commit/0dee9266100ff65809c0c4ee7d2e6fcadb6c6b08
>
> which corresponds to an update of the configure system. I see nothing
> wrong. Do you see something? Are you aware of issues with 2.71 autoconf?
no, if anything 2.71 fixes a bunch of things.
>
> Riccardo
Reply to thread Export thread (mbox)