X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com Message-ID: <20140418141703.24987.qmail@stuge.se> Date: Fri, 18 Apr 2014 16:17:03 +0200 From: Peter Stuge To: geda-user AT delorie DOT com Subject: Re: [geda-user] geda-gaf on Windows - help needed Mail-Followup-To: geda-user AT delorie DOT com References: <20140417030350 DOT 2177 DOT qmail AT stuge DOT se> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Reply-To: geda-user AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: geda-user AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Kai-Martin Knaak wrote: > I removed all guile packages from my host system. After this, the > configure script explicitly told me that a cross compile requires > guile to be installed on the host in the same version. What fun! > Now, configure of the cross compile is contended with my set-up. What is the exact configure command? If you don't run it manually it will still be available in the first lines of config.log, I'd be interested in the output of: head config.log > configure: WARNING: using cross tools not prefixed with host triplet This warning is part of the reason I ask about the configure command. > configure: WARNING: Guessing that stack grows down -- see scmconfig.h This is probably harmless. > configure: WARNING: *** GNU Readline is too old on your system. > configure: WARNING: *** You need readline version 2.1 or later. This sounds like a problem. > Compiling guile... .. > ../lib/.libs/libgnu.a(mkstemp.o):mkstemp.c:(.text+0x0): multiple definition of `_mkstemp' > .libs/libguile_2.0_la-mkstemp.o:mkstemp.c:(.text+0x0): first defined here This is the linker error. mkstemp() is defined both in lib/libgnu.a and in libguile_2.0.la. The question is why. One reason would be that configure is being run incorrectly for the cross-compilation and that this causes different bits of guile to come into conflict with each other, because they are both making false assumptions based on the incorrect configure invocation. I am only speculating about that but it isn't trivial to cross-compile and I don't really trust something that tries to automate it in a general fashion across different versions of a package. > In minipack/build/guile-2.0.11-1/logs/make.log I find no errors but a > warning: > > /-------------------------- > (...) > CC libguile_2.0_la-mkstemp.lo > CCLD libguile-2.0.la > *** Warning: This system can not link to static lib archive /usr/local/src/minipack/result/lib/libatomic_ops.la. > *** I have the capability to make that library automatically link in when > *** you link to this library. But I can only do this if you have a > *** shared version of the library, which you do not appear to have. This might also be a problem. > I tried to run make directly in minipack/build/guile-2.0.11-1/ . > This yields: > > /-------------------------- > $ make > (...) > Info: resolving _GC_greatest_plausible_heap_addr by linking to __imp__GC_greatest_plausible_heap_addr (auto-import) > Creating library file: .libs/libguile-2.0.dll.a > ../lib/.libs/libgnu.a(mkstemp.o):mkstemp.c:(.text+0x0): multiple definition of `_mkstemp' > .libs/libguile_2.0_la-mkstemp.o:mkstemp.c:(.text+0x0): first defined here .. > Is this the error the linker hit? Sounds like warning to me. Indeed it is the same error as the linker encountered above. //Peter