Cannot install GNU Smalltalk from git on NetBSD 5

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Cannot install GNU Smalltalk from git on NetBSD 5

Dmitry Matveev
Hello,

I'm trying to install GNU Smalltalk from git on NetBSD 5.0.2.

Configuration and compilation went fine, but the installation has
failed with error
'Making install in libgst
make: don't know how to make prims.inl. Stop'
(the complete log is attached).

I've checked up the prims.inl target in the  Makefile in libgst and it
looks the same as on my other GNU/Linux machine.

Does the failure relate to some BSD features that some tools could
behave different than in GNU/Linux?

Thanks in advance,
Dmitry

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk

gst-make-install-failed (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Paolo Bonzini-2
On 10/30/2010 01:37 PM, Dmitry Matveev wrote:

> Hello,
>
> I'm trying to install GNU Smalltalk from git on NetBSD 5.0.2.
>
> Configuration and compilation went fine, but the installation has
> failed with error
> 'Making install in libgst
> make: don't know how to make prims.inl. Stop'
> (the complete log is attached).
>
> I've checked up the prims.inl target in the  Makefile in libgst and it
> looks the same as on my other GNU/Linux machine.
>
> Does the failure relate to some BSD features that some tools could
> behave different than in GNU/Linux?

Maybe, can you try GNU make?  However there is nothing GNU make
specific, it may be a bug in BSD make even.

Paolo

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Dmitry Matveev
Well, looks like it was not compiled completely for that first time :)

With GNU make the build fails with the error

/bin/ksh ./libtool --tag=CC   --mode=link gcc  -g -O2 -Wall
-Wno-strict-aliasing -Wno-switch -fno-gcse -fstrict-aliasing
-Wdeclaration-after-statement -Wno-format -Wpointer-arith
-Wno-pointer-sign -Wwrite-strings  -export-dynamic    -o gst main.o
libgst/libgst.la lib-src/library.la   -lm
libtool: link: gcc -g -O2 -Wall -Wno-strict-aliasing -Wno-switch
-fno-gcse -fstrict-aliasing -Wdeclaration-after-statement -Wno-format
-Wpointer-arith -Wno-pointer-sign -Wwrite-strings -o gst main.o
-Wl,--export-dynamic  libgst/.libs/libgst.a -lc /lib/libc.so
lib-src/.libs/library.a -lm -Wl,-rpath -Wl,/lib -Wl,-rpath -Wl,/lib
libgst/.libs/libgst.a(sysdep.o): In function `_gst_wakeup':
sysdep/posix/events.c:387: undefined reference to `pthread_kill'

I've tried to play with LDFLAGS in the enviromnent and in the
Makefile, but there were no any positive result...

2010/10/30, Paolo Bonzini <[hidden email]>:

> On 10/30/2010 01:37 PM, Dmitry Matveev wrote:
>> Hello,
>>
>> I'm trying to install GNU Smalltalk from git on NetBSD 5.0.2.
>>
>> Configuration and compilation went fine, but the installation has
>> failed with error
>> 'Making install in libgst
>> make: don't know how to make prims.inl. Stop'
>> (the complete log is attached).
>>
>> I've checked up the prims.inl target in the  Makefile in libgst and it
>> looks the same as on my other GNU/Linux machine.
>>
>> Does the failure relate to some BSD features that some tools could
>> behave different than in GNU/Linux?
>
> Maybe, can you try GNU make?  However there is nothing GNU make
> specific, it may be a bug in BSD make even.
>
> Paolo
>

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Paolo Bonzini-2
On 10/30/2010 03:20 PM, Dmitry Matveev wrote:

> Well, looks like it was not compiled completely for that first time :)
>
> With GNU make the build fails with the error
>
> /bin/ksh ./libtool --tag=CC   --mode=link gcc  -g -O2 -Wall
> -Wno-strict-aliasing -Wno-switch -fno-gcse -fstrict-aliasing
> -Wdeclaration-after-statement -Wno-format -Wpointer-arith
> -Wno-pointer-sign -Wwrite-strings  -export-dynamic    -o gst main.o
> libgst/libgst.la lib-src/library.la   -lm
> libtool: link: gcc -g -O2 -Wall -Wno-strict-aliasing -Wno-switch
> -fno-gcse -fstrict-aliasing -Wdeclaration-after-statement -Wno-format
> -Wpointer-arith -Wno-pointer-sign -Wwrite-strings -o gst main.o
> -Wl,--export-dynamic  libgst/.libs/libgst.a -lc /lib/libc.so
> lib-src/.libs/library.a -lm -Wl,-rpath -Wl,/lib -Wl,-rpath -Wl,/lib
> libgst/.libs/libgst.a(sysdep.o): In function `_gst_wakeup':
> sysdep/posix/events.c:387: undefined reference to `pthread_kill'
>
> I've tried to play with LDFLAGS in the enviromnent and in the
> Makefile, but there were no any positive result...

If there's no pthread_kill in NetBSD you're hosed. :(

Paolo

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Aleksej Saushev-2
In reply to this post by Dmitry Matveev
Dmitry Matveev <[hidden email]> writes:

> Well, looks like it was not compiled completely for that first time :)
>
> With GNU make the build fails with the error
>
> /bin/ksh ./libtool --tag=CC   --mode=link gcc  -g -O2 -Wall
> -Wno-strict-aliasing -Wno-switch -fno-gcse -fstrict-aliasing
> -Wdeclaration-after-statement -Wno-format -Wpointer-arith
> -Wno-pointer-sign -Wwrite-strings  -export-dynamic    -o gst main.o
> libgst/libgst.la lib-src/library.la   -lm
> libtool: link: gcc -g -O2 -Wall -Wno-strict-aliasing -Wno-switch
> -fno-gcse -fstrict-aliasing -Wdeclaration-after-statement -Wno-format
> -Wpointer-arith -Wno-pointer-sign -Wwrite-strings -o gst main.o
> -Wl,--export-dynamic  libgst/.libs/libgst.a -lc /lib/libc.so
> lib-src/.libs/library.a -lm -Wl,-rpath -Wl,/lib -Wl,-rpath -Wl,/lib
> libgst/.libs/libgst.a(sysdep.o): In function `_gst_wakeup':
> sysdep/posix/events.c:387: undefined reference to `pthread_kill'

This indicates bug in GNU Smalltalk build system, it doesn't link
against libpthread.

JFYI,

$ gst
gst
GNU Smalltalk ready

st> 2 * 2.
4
st> $ uname -mrs
NetBSD 5.99.39 i386

Though your problem is known already:

http://nyftp.netbsd.org/pub/pkgsrc/packages/reports/2010Q3/NetBSD-5.0.2-i386/20101016.1718/smalltalk-3.2.2nb1/build.log

I'll look at it when I have time.


--
HE CE3OH...


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Paolo Bonzini-2
On 10/31/2010 11:03 PM, Aleksej Saushev wrote:
> This indicates bug in GNU Smalltalk build system, it doesn't link
> against libpthread.

Can you post a patch here too, when you look at it?  It works for Linux,
where you have this in libgst.la:

# Linker flags that can not go in dependency_libs.
inherited_linker_flags=' -pthread'

# Libraries that this one depends upon.
dependency_libs=' -ldl -lsigsegv -lffi -lreadline -lltdl -lgmp -lpthread
-lrt -lm'

and then libtool picks the dependencies automatically.

Can you "grep LIBTHREAD libgst/Makefile"?

Paolo

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Aleksej Saushev-2
Paolo Bonzini <[hidden email]> writes:

> On 10/31/2010 11:03 PM, Aleksej Saushev wrote:
>> This indicates bug in GNU Smalltalk build system, it doesn't link
>> against libpthread.
>
> Can you post a patch here too, when you look at it?  It works
> for Linux, where you have this in libgst.la:
>
> # Linker flags that can not go in dependency_libs.
> inherited_linker_flags=' -pthread'
>
> # Libraries that this one depends upon.
> dependency_libs=' -ldl -lsigsegv -lffi -lreadline -lltdl -lgmp
> -lpthread -lrt -lm'
>
> and then libtool picks the dependencies automatically.
>
> Can you "grep LIBTHREAD libgst/Makefile"?

I can't reproduce it on my 5.99.39, it looks specific to 5.0.2,
see ref. 1, I don't know why, it needs further investigation.
I'll see what I can do in this respect.

Since 5.0.2 is expected to go away soon, someone should check 5.1 RC.
I'll see what I can do with this too.

If you're interested in already existing fixes, you can find patches
at ref. 2, some of them add DragonFly support, some of them fix builds
on NetBSD at least (my primary working platform), FreeBSD, and DragonFly
(those who touched the package last work on those platforms).


References:
1. http://mail-index.netbsd.org/pkgsrc-bulk/
2. http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/smalltalk/patches/

--
HE CE3OH...


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: Cannot install GNU Smalltalk from git on NetBSD 5

Paolo Bonzini-2
On 10/31/2010 11:24 PM, Aleksej Saushev wrote:

> Paolo Bonzini<[hidden email]>  writes:
>
>> On 10/31/2010 11:03 PM, Aleksej Saushev wrote:
>>> This indicates bug in GNU Smalltalk build system, it doesn't link
>>> against libpthread.
>>
>> Can you post a patch here too, when you look at it?  It works
>> for Linux, where you have this in libgst.la:
>>
>> # Linker flags that can not go in dependency_libs.
>> inherited_linker_flags=' -pthread'
>>
>> # Libraries that this one depends upon.
>> dependency_libs=' -ldl -lsigsegv -lffi -lreadline -lltdl -lgmp
>> -lpthread -lrt -lm'
>>
>> and then libtool picks the dependencies automatically.
>>
>> Can you "grep LIBTHREAD libgst/Makefile"?
>
> I can't reproduce it on my 5.99.39, it looks specific to 5.0.2,
> see ref. 1, I don't know why, it needs further investigation.
> I'll see what I can do in this respect.
>
> Since 5.0.2 is expected to go away soon, someone should check 5.1 RC.
> I'll see what I can do with this too.
>
> If you're interested in already existing fixes, you can find patches
> at ref. 2, some of them add DragonFly support, some of them fix builds
> on NetBSD at least (my primary working platform), FreeBSD, and DragonFly
> (those who touched the package last work on those platforms).
patch-aa => this is for libffi, the package should depend on a libffi
port.  The included libffi is only for simplicity, it's not meant to be
used by distributions.

patch-ac => same.  Except I'm upstream for libsigsegv and I'll push it.

patch-ae, first hunk => already upstream

patch-af => included

patch-ae + patch-ah => can you try the attached fix instead?

Also, please compile this program (gcc x.c -I.) after configure has been
run, and send the output:

#include <config.h>
#include <lib-src/ltdl_.h>
#include <lib-src/ltdl.c>

int
main ()
{
   lt_dlinit();
   printf ("%p ", lt_dlopenext("libc"));
   printf ("%s\n", lt_dlerror());
   return 0;
}

Thanks!

Paolo

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk

netbsd-libc-la.patch (2K) Download Attachment