* Building without posix @ 2011-04-01 22:41 Dmitry Dzhus 2011-04-02 15:25 ` Dmitry Dzhus 2011-04-14 22:17 ` Ludovic Courtès 0 siblings, 2 replies; 7+ messages in thread From: Dmitry Dzhus @ 2011-04-01 22:41 UTC (permalink / raw) To: guile-devel Is POSIX module considered optional? Configuring guile-2.0 and git trunk with --disable-posix results in the following error on my x86: make all-am make[3]: Entering directory `/home/sphinx/projects/trunks/guile/libguile' [... skipped .lo lines ...] CC libguile_2.0_la-weaks.lo CC dynl.lo CC net_db.lo CC socket.lo CC regex-posix.lo CCLD libguile-2.0.la CC guile-guile.o CCLD guile ./.libs/libguile-2.0.so: undefined reference to `scm_stat' ./.libs/libguile-2.0.so: undefined reference to `scm_i_locale_mutex' ./.libs/libguile-2.0.so: undefined reference to `scm_ttyname' ./.libs/libguile-2.0.so: undefined reference to `scm_canonicalize_path' ./.libs/libguile-2.0.so: undefined reference to `scm_i_relativize_path' collect2: ld returned 1 exit status make[3]: *** [guile] Error ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-04-01 22:41 Building without posix Dmitry Dzhus @ 2011-04-02 15:25 ` Dmitry Dzhus 2011-06-30 10:29 ` Andy Wingo 2011-04-14 22:17 ` Ludovic Courtès 1 sibling, 1 reply; 7+ messages in thread From: Dmitry Dzhus @ 2011-04-02 15:25 UTC (permalink / raw) To: guile-devel Also similar error when building without dynamic modules support: CCLD libguile-2.0.la CCLD guile ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_link' ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_call' ./.libs/libguile-2.0.so: undefined reference to `scm_init_dynamic_linking' ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_func' collect2: ld returned 1 exit status ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-04-02 15:25 ` Dmitry Dzhus @ 2011-06-30 10:29 ` Andy Wingo 0 siblings, 0 replies; 7+ messages in thread From: Andy Wingo @ 2011-06-30 10:29 UTC (permalink / raw) To: Dmitry Dzhus; +Cc: guile-devel On Sat 02 Apr 2011 17:25, Dmitry Dzhus <dima@dzhus.org> writes: > Also similar error when building without dynamic modules support: > > CCLD libguile-2.0.la > CCLD guile > ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_link' > ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_call' > ./.libs/libguile-2.0.so: undefined reference to `scm_init_dynamic_linking' > ./.libs/libguile-2.0.so: undefined reference to `scm_dynamic_func' > collect2: ld returned 1 exit status Fixed, thanks. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-04-01 22:41 Building without posix Dmitry Dzhus 2011-04-02 15:25 ` Dmitry Dzhus @ 2011-04-14 22:17 ` Ludovic Courtès 2011-06-30 10:10 ` Andy Wingo 1 sibling, 1 reply; 7+ messages in thread From: Ludovic Courtès @ 2011-04-14 22:17 UTC (permalink / raw) To: Dmitry Dzhus; +Cc: guile-devel Hi Dmitry, Dmitry Dzhus <dima@dzhus.org> writes: > Is POSIX module considered optional? Not really. > Configuring guile-2.0 and git trunk with --disable-posix results in the > following error on my x86: I pushed a patch that should allow Guile to be built with ‘--disable-posix’. However, there’s quite a bit of Scheme code that needs access to POSIX functions now, notably the compiler. So a number of file system access procedures must be compiled for the compiler to work. With the patch I pushed, ./check-guile doesn’t even work because ‘readdir’ & co. are lacking. We could change this to compile them even with ‘--disable-posix’, but the problem is that there could be even more of them, which would defeat the whole point of ‘--disable-posix’, I guess. Thanks, Ludo’. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-04-14 22:17 ` Ludovic Courtès @ 2011-06-30 10:10 ` Andy Wingo 2011-06-30 14:17 ` Ludovic Courtès 0 siblings, 1 reply; 7+ messages in thread From: Andy Wingo @ 2011-06-30 10:10 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guile-devel, Dmitry Dzhus Hi! A bit late, but... On Fri 15 Apr 2011 00:17, ludo@gnu.org (Ludovic Courtès) writes: > Dmitry Dzhus <dima@dzhus.org> writes: > >> Is POSIX module considered optional? > > Not really. > >> Configuring guile-2.0 and git trunk with --disable-posix results in the >> following error on my x86: > > I pushed a patch that should allow Guile to be built with > ‘--disable-posix’. > > However, there’s quite a bit of Scheme code that needs access to POSIX > functions now, notably the compiler. So a number of file system access > procedures must be compiled for the compiler to work. > > With the patch I pushed, ./check-guile doesn’t even work because > ‘readdir’ & co. are lacking. We could change this to compile them even > with ‘--disable-posix’, but the problem is that there could be even more > of them, which would defeat the whole point of ‘--disable-posix’, I guess. I think we should focus on the GNU system, using gnulib to adapt other systems to look like GNU. Disabling POSIX bindings helps no one on the GNU system -- if the question is one of library size, the solution should be loadable modules, not compile-time options. We are doing very well in that way. A stripped libguile is 1.5MB, like libc. That said, I don't like a lot of our POSIX bindings. It's in the default module, and it's lots of symbols. But it's probably best to migrate to some more modularized world using deprecation than to continue with the --disable-posix fantasy. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-06-30 10:10 ` Andy Wingo @ 2011-06-30 14:17 ` Ludovic Courtès 2011-06-30 14:30 ` Andy Wingo 0 siblings, 1 reply; 7+ messages in thread From: Ludovic Courtès @ 2011-06-30 14:17 UTC (permalink / raw) To: Andy Wingo; +Cc: guile-devel, Dmitry Dzhus Hello! Andy Wingo <wingo@pobox.com> skribis: > I think we should focus on the GNU system, using gnulib to adapt other > systems to look like GNU. Disabling POSIX bindings helps no one on the > GNU system -- if the question is one of library size, the solution > should be loadable modules, not compile-time options. We are doing very > well in that way. A stripped libguile is 1.5MB, like libc. I think the compile-time option can be useful when building on a “raw” or old system, which doesn’t support all the POSIX bits we wrap, or on a slow system. For instance, when we port Guile to run on the bare metal, we’ll be happy that ‘--disable-posix --disable-networking --disable-threads’ nicely delimits the contour of what we need, won’t we? > That said, I don't like a lot of our POSIX bindings. It's in the > default module, and it's lots of symbols. But it's probably best to > migrate to some more modularized world using deprecation than to > continue with the --disable-posix fantasy. Yeah. I think it’s been on the to-do list since 1.4. :-) Thanks, Ludo’. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Building without posix 2011-06-30 14:17 ` Ludovic Courtès @ 2011-06-30 14:30 ` Andy Wingo 0 siblings, 0 replies; 7+ messages in thread From: Andy Wingo @ 2011-06-30 14:30 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guile-devel, Dmitry Dzhus Hi :) On Thu 30 Jun 2011 16:17, ludo@gnu.org (Ludovic Courtès) writes: > I think the compile-time option can be useful when building on a “raw” > or old system, which doesn’t support all the POSIX bits we wrap, or on a > slow system. But we check for all of the bits we do wrap, no? It seems to me that --disable-posix is about decreasing size, not about enabling Guile to build on more systems. And in fact can you think of any systems in the last 10 years for which --disable-posix would allow you to do something interesting? > For instance, when we port Guile to run on the bare metal, we’ll be > happy that ‘--disable-posix --disable-networking --disable-threads’ > nicely delimits the contour of what we need, won’t we? This is crazy :) We can't anticipate the needs of any such port, so it's pointless to maintain options that probably don't work. Regards, Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-06-30 14:30 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-04-01 22:41 Building without posix Dmitry Dzhus 2011-04-02 15:25 ` Dmitry Dzhus 2011-06-30 10:29 ` Andy Wingo 2011-04-14 22:17 ` Ludovic Courtès 2011-06-30 10:10 ` Andy Wingo 2011-06-30 14:17 ` Ludovic Courtès 2011-06-30 14:30 ` Andy Wingo
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).