delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2014/04/18/10:17:55

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 <peter AT stuge DOT se>
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: <lilgfh$r6n$1 AT ger DOT gmane DOT org> <20140417030350 DOT 2177 DOT qmail AT stuge DOT se> <lipepf$hap$1 AT ger DOT gmane DOT org> <CAOFvGD5nG7DAavVOuR2N3ZM-R9NHA0-E8ik5X_six4cpcwab7A AT mail DOT gmail DOT com> <lipj55$hf1$1 AT ger DOT gmane DOT org>
MIME-Version: 1.0
In-Reply-To: <lipj55$hf1$1@ger.gmane.org>
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

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019