Hi Eli, Eli Zaretskii <e...@gnu.org> skribis:
>> From: l...@gnu.org (Ludovic Courtès) >> Date: Mon, 30 Jan 2012 00:19:40 +0100 >> >> > 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 > > It solves all of them, thanks. Even better than expected. :-) >> I don’t know where -lole32, and -lregex come from, for example. > > "-lregex" is needed by regex-posix.c (naturally ;-), since the default > Windows libraries do not include regcomp, regexec, etc. There's a > test in configure that first check the standard library link, then > "-lregex" and "-lrx". > > However, @GUILE_LIBS@ already gets edited to include -lregex, so > there's no problems here. > > "-lole32" (and a few others) come from libregex.la. However, the > standard link command for the program I'm building (GNU Make, btw) > already includes these libraries even without Guile, so using your > modified guile-2.0.pc.in, I was able to link the program successfully > with no unresolved externals. Great! > Btw, shouldn't guile-2.0-uninstalled.pc.in get the same changes? Yes, you’re right. Fixed in 7e9a301b7f3bcc811803305250b22d71a8b06155. Thanks, Ludo’.