Hi Eli,

Eli Zaretskii <[email protected]> skribis:

> When statically linking programs against libguile-2.0.a, I get
> unresolved externals.  This is on MS-Windows, but I don't think this
> is related to the problem.
>
> I finally traced that to the contents of guile-2.0.pc file:
>
>   Libs: -L${libdir} -lguile-2.0 -Ld:/usr/lib -lgc  
>   Libs.private:  d:/usr/lib/libgmp.dll.a -Ld:/usr/lib 
> d:/usr/lib/libltdl.dll.a -Ld:/usr/lib -lffi    -lregex -lcrypt -lws2_32 -lm 
>
> However, libguile-2.0.la shows more dependency libraries:
>
>   dependency_libs=' -lgc -lffi -lunistring -liconv -lregex -lintl -liconv 
> -lgmp -ltdl -lregex -lintl -lwsock32 -lole32 -luuid -lmsvcp60 -lcrypt 
> -lws2_32'
>
> As you see, quite a few libraries are missing from guile-2.0.pc, and
> also a several libraries need to appear more than once in the link
> command line.

Commit 58f86505d658359508732c8f187bc37d010074d0 (see below) should solve
most of that, but not all, since I don’t know where -lole32, and -lregex
come from, for example.

Can you try it and report back?

Thanks!

Ludo’.

commit 58f86505d658359508732c8f187bc37d010074d0 (HEAD, refs/remotes/origin/stable-2.0, refs/heads/stable-2.0)
Author: Ludovic Courtès <[email protected]>
Date:   Mon Jan 30 00:17:34 2012 +0100

    Augment `Libs.private' with for non-GNU platforms.
    
    Reported by Eli Zaretskii <[email protected]>.
    
    * meta/guile-2.0.pc.in (Libs.private): Add all the optional libraries
      that may be pulled via Gnulib on non-GNU platforms.

	Modified meta/guile-2.0.pc.in
diff --git a/meta/guile-2.0.pc.in b/meta/guile-2.0.pc.in
index ecca778..1bda734 100644
--- a/meta/guile-2.0.pc.in
+++ b/meta/guile-2.0.pc.in
@@ -15,5 +15,8 @@ Name: GNU Guile
 Description: GNU's Ubiquitous Intelligent Language for Extension
 Version: @GUILE_VERSION@
 Libs: -L${libdir} -lguile-@GUILE_EFFECTIVE_VERSION@ @BDW_GC_LIBS@
-Libs.private: @LIB_CLOCK_GETTIME@ @LIBGMP@ @LIBLTDL@ @LIBFFI_LIBS@ @GUILE_LIBS@
+Libs.private: @LIB_CLOCK_GETTIME@ @LIBGMP@ @LIBLTDL@ @LIBFFI_LIBS@	\
+  @LIBUNISTRING@ @GUILE_LIBS@ @LIBICONV@ @LIBINTL@ @LIBSOCKET@		\
+  @SERVENT_LIB@ @HOSTENT_LIB@ @GETADDRINFO_LIB@ @INET_NTOP_LIB@		\
+  @INET_PTON_LIB@
 Cflags: -I${pkgincludedir}/@GUILE_EFFECTIVE_VERSION@ @GUILE_CFLAGS@ @BDW_GC_CFLAGS@

Reply via email to