This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

build-guile [fwd: g-wrap-0.3.9 configure problem]



Dominique gave me permission to post his message here.  I am trying to
help him set-up G-Wrap to configure correctly for his Guile
interpreter (note that he is using guile-core-980111 under Solaris).
My configure.in script uses build-guile to determine link flags (using
the configuration code Mikael Djurfeldt sent to me -- thanks!), but he
is still having some problems with ./configure missing a couple of
libraries for linking.

Could anyone tell me whether my answers to his questions are correct?
Also, if my understanding of what happened to him is true, it looks
like build-guile may not be supplying all the necessary '-l...'
flags (though it may be due to the old version of Guile).

Thanks for any suggestions,
 -Chris

ps.  I rarely get answers when I post to guile@cygnus.com.  Is my
     netiquette OK?



chrislee@lavash.ius.cs.cmu.edu writes:

 > I install my guile package (and lots of other software) in an unusual
 > place too.  My understanding is that for systems which use
 > ./configure scripts, the work-around you suggest is the standard way
 > of handling "non-standard" locations.  In my .login file, I have the
 > lines
 > 
 >     setenv LD_LIBRARYN32_PATH /lib32:/usr/lib32:/usr/local/lib32:/usr0/space/lib32:$HOME/lib:$HOME/lib/g-lib
 >     setenv LPATH $LD_LIBRARYN32_PATH
 >     setenv LIBRARY_PATH $LPATH
 > 
 > which seems to take care of the problem for me (the lib32 stuff is
 > just weird IRIX stuff).

I understands this solves the problem for you and me because we have
built the shared lib, but if someone works with static libs only, it
does not work!

 > I also put any special customizations which ./configure should know
 > about in $HOME/share/config.site and tell configure to look for this
 > information by setting this in my .login:
 > 
 >     setenv CONFIG_SITE $HOME/share/config.site

Ok, this may be useful but may be too complex for the average user.
May be the solution is to add an option to specify the guile install
path.

 > 	dnl Checks for libraries.
 > 	AC_PATH_PROG(BUILD_GUILE, build-guile)
 > 	if test "$ac_cv_prog_BUILD_GUILE" = no; then
 > 	  GUILE_LIBS='-lguile'
 > 	else
 > 	  GUILE_LIBS=`build-guile link`
 > 	fi
 > 	LIBS="$GUILE_LIBS $LIBS"
 > 
 > This is the way we builders of Guile extensions are supposed to
 > figure-out how to link our executables.  The purpose of these is to
 > query Guile itself as to which libraries it uses for building the
 > guile executable.

Yes I have seen this.

 > It sounds like it should return something like "-lguile -lsocket -lnsl
 > -ldl".

No, build-guile link returns -lguile only.

 > Either build-guile is not found by the ./configure script, or
 > it is just returning "-lguile".  If build-guile isn't found, try
 > putting it in a place the configure script can find it.  If
 > build-guile is not returning all the necessary libraries, then we need
 > to figure-out why.
 > Did you edit the Guile Makefile to get the proper
 > libraries included?

No. The Guile configure guesses that alone.

 > In this case, we should alert the maintainers and
 > make sure their configure script itself gets the libraries right so
 > that it builds the proper list into the variable %guile-build-info
 > (this is a variable avaiable in the interpreter which is somehow build
 > during the configuration of Guile -- I haven't investigated how).

I think the problem is here!


 > If you are using Guile 1.2 instead of a recent snapshot, build-guile
 > may not exist on your system.  In this case, I would edit configure.in
 > to use the line 
 > 
 >   GUILE_LIBS='-lguile -lsocket -lnsl -ldl'
 > 
 > instead of 
 > 
 >   GUILE_LIBS='-lguile'
 > 
 > and run autoconf.  If you don't have autoconf, just find the
 > corresponding line in ./configure and make the same change.
 > 
 > I hope this helps,

Yes ok, I am using a recent snap and I have autoconf
I understand the workarround.
thanks.

 >  -Chris

/Dominique.