unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Cannot cross compile guile 1.8.3 on Ubuntu
@ 2008-11-18 21:48 Igor Chudov
  2008-11-18 22:10 ` Andy Wingo
  0 siblings, 1 reply; 6+ messages in thread
From: Igor Chudov @ 2008-11-18 21:48 UTC (permalink / raw)
  To: guile-user

I am on a 64bit Ubuntu Hardy installation. I am trying to build Guile
1.8.3 but to build a 32 version thereof. (cross compile). 

So I did

   ./configure --host=i386

but this seems to have no effect and builds a x86_64 version of guilt,
which is NOT what I want. 

Any idea how I can cross compile and build a 32 bit version on a 64
bit platform Ubuntu Hardy?

thanks

i




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Cannot cross compile guile 1.8.3 on Ubuntu
  2008-11-18 21:48 Cannot cross compile guile 1.8.3 on Ubuntu Igor Chudov
@ 2008-11-18 22:10 ` Andy Wingo
  2008-11-18 22:27   ` Igor Chudov
  0 siblings, 1 reply; 6+ messages in thread
From: Andy Wingo @ 2008-11-18 22:10 UTC (permalink / raw)
  To: igor; +Cc: guile-user

Hi Igor

On Tue 18 Nov 2008 22:48, Igor Chudov <igor@chudov.com> writes:

> Any idea how I can cross compile and build a 32 bit version on a 64
> bit platform Ubuntu Hardy?

I haven't actually done this, but try:

  CC='gcc -m32' ./configure

Also, as long as you're compiling from source, perhaps you should use
the newest release :)

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Cannot cross compile guile 1.8.3 on Ubuntu
  2008-11-18 22:10 ` Andy Wingo
@ 2008-11-18 22:27   ` Igor Chudov
  2008-11-19  8:57     ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Igor Chudov @ 2008-11-18 22:27 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guile-user

On Tue, Nov 18, 2008 at 11:10:42PM +0100, Andy Wingo wrote:
> Hi Igor
> 
> On Tue 18 Nov 2008 22:48, Igor Chudov <igor@chudov.com> writes:
> 
> > Any idea how I can cross compile and build a 32 bit version on a 64
> > bit platform Ubuntu Hardy?
> 
> I haven't actually done this, but try:
> 
>   CC='gcc -m32' ./configure
> 
> Also, as long as you're compiling from source, perhaps you should use
> the newest release :)


If I do this, then I get in trouble with libtool, which still demands
that I link against 64 bit libraries: 

ile_la-gc.lo libguile_la-gc-mark.lo libguile_la-gc-segment.lo libguile_la-gc-malloc.lo libguile_la-gc-card.lo libguile_la-gc-freelist.lo libguile_la-gc_os_dep.lo libguile_la-gdbint.lo libguile_la-gh_data.lo libguile_la-gh_eval.lo libguile_la-gh_funcs.lo libguile_la-gh_init.lo libguile_la-gh_io.lo libguile_la-gh_list.lo libguile_la-gh_predicates.lo libguile_la-goops.lo libguile_la-gsubr.lo libguile_la-guardians.lo libguile_la-hash.lo libguile_la-hashtab.lo libguile_la-hooks.lo libguile_la-i18n.lo libguile_la-init.lo libguile_la-inline.lo libguile_la-ioext.lo libguile_la-keywords.lo libguile_la-lang.lo libguile_la-list.lo libguile_la-load.lo libguile_la-macros.lo libguile_la-mallocs.lo libguile_la-modules.lo libguile_la-numbers.lo libguile_la-objects.lo libguile_la-objprop.lo libguile_la-options.lo libguile_la-pairs.lo libguile_la-ports.lo libguile_la-print.lo libguile_la-procprop.lo libguile_la-procs.lo libguile_la-properties.lo libguile_la-random.lo libguile_la-rdelim.lo libguile_la-read.lo libguile_la-root.lo libguile_la-rw.lo libguile_la-scmsigs.lo libguile_la-script.lo libguile_la-simpos.lo libguile_la-smob.lo libguile_la-sort.lo libguile_la-srcprop.lo libguile_la-stackchk.lo libguile_la-stacks.lo libguile_la-stime.lo libguile_la-strings.lo libguile_la-srfi-4.lo libguile_la-srfi-13.lo libguile_la-srfi-14.lo libguile_la-strorder.lo libguile_la-strports.lo libguile_la-struct.lo libguile_la-symbols.lo libguile_la-threads.lo libguile_la-null-threads.lo libguile_la-throw.lo libguile_la-values.lo libguile_la-variable.lo libguile_la-vectors.lo libguile_la-version.lo libguile_la-vports.lo libguile_la-weaks.lo libguile_la-ramap.lo libguile_la-unif.lo dynl.lo filesys.lo posix.lo net_db.lo socket.lo regex-posix.lo -lgmp -lcrypt -lm -lltdl 
gcc -m32 -shared  .libs/libguile_la-load.o  /usr/lib/libgmp.so -lcrypt -lm /usr/lib/libltdl.so  -m32 -pthread -Wl,-soname -Wl,libguile.so.17 -o .libs/libguile.so.17.1.1
/usr/lib/libgmp.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[3]: *** [libguile.la] Error 1
make[3]: Leaving directory `/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3/libguile'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3/libguile'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3'
make: *** [all] Error 2




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Cannot cross compile guile 1.8.3 on Ubuntu
  2008-11-18 22:27   ` Igor Chudov
@ 2008-11-19  8:57     ` Ludovic Courtès
  2008-11-19 14:46       ` Igor Chudov
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2008-11-19  8:57 UTC (permalink / raw)
  To: guile-user

Hello,

Igor Chudov <igor@chudov.com> writes:

> /usr/lib/libgmp.so: could not read symbols: File in wrong format
> collect2: ld returned 1 exit status

I suppose the problem is that /usr/lib/libgmp.so is 64-bit ELF.

Assuming the 32-bit version is under /usr/lib32, you can try something
like this:

  CC="gcc -m32" LDFLAGS="-L/usr/lib32" ./configure

Hope this helps,
Ludo'.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Cannot cross compile guile 1.8.3 on Ubuntu
  2008-11-19  8:57     ` Ludovic Courtès
@ 2008-11-19 14:46       ` Igor Chudov
  2008-11-19 21:51         ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Igor Chudov @ 2008-11-19 14:46 UTC (permalink / raw)
  To: Ludovic Court?s; +Cc: guile-user

On Wed, Nov 19, 2008 at 09:57:26AM +0100, Ludovic Court?s wrote:
> Hello,
> 
> Igor Chudov <igor@chudov.com> writes:
> 
> > /usr/lib/libgmp.so: could not read symbols: File in wrong format
> > collect2: ld returned 1 exit status
> 
> I suppose the problem is that /usr/lib/libgmp.so is 64-bit ELF.

Yep.

And the real issue is that libtool finds the 64 bit version and forces
me to link against it.

> Assuming the 32-bit version is under /usr/lib32, you can try something
> like this:
> 
>   CC="gcc -m32" LDFLAGS="-L/usr/lib32" ./configure

Does not work: 

ap.lo libguile_la-unif.lo dynl.lo filesys.lo posix.lo net_db.lo
socket.lo regex-posix.lo -lgmp -lcrypt -lm -lltdl 
gcc -m32 -shared  .libs/libguile_la-load.o  -L/usr/lib32
/usr/lib/libgmp.so -lcrypt -lm /usr/lib/libltdl.so  -m32 -pthread
-Wl,-soname -Wl,libguile.so.17 -o .libs/libguile.so.17.1.1
/usr/lib/libgmp.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[3]: *** [libguile.la] Error 1
make[3]: Leaving directory
`/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3/libguile'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3/libguile'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/ichudov/smile/guile-1.xx/archive/guile-1.8.3'




^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Cannot cross compile guile 1.8.3 on Ubuntu
  2008-11-19 14:46       ` Igor Chudov
@ 2008-11-19 21:51         ` Ludovic Courtès
  0 siblings, 0 replies; 6+ messages in thread
From: Ludovic Courtès @ 2008-11-19 21:51 UTC (permalink / raw)
  To: guile-user

Igor Chudov <igor@chudov.com> writes:

> Does not work: 
>
> ap.lo libguile_la-unif.lo dynl.lo filesys.lo posix.lo net_db.lo
> socket.lo regex-posix.lo -lgmp -lcrypt -lm -lltdl 
> gcc -m32 -shared  .libs/libguile_la-load.o  -L/usr/lib32
> /usr/lib/libgmp.so -lcrypt -lm /usr/lib/libltdl.so  -m32 -pthread
> -Wl,-soname -Wl,libguile.so.17 -o .libs/libguile.so.17.1.1
> /usr/lib/libgmp.so: could not read symbols: File in wrong format
> collect2: ld returned 1 exit status

Can you post the exact linker invocation, the one with "libtool
--mode=link" and the one with "gcc -shared" that follows?

Thanks,
Ludo'.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-11-19 21:51 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-18 21:48 Cannot cross compile guile 1.8.3 on Ubuntu Igor Chudov
2008-11-18 22:10 ` Andy Wingo
2008-11-18 22:27   ` Igor Chudov
2008-11-19  8:57     ` Ludovic Courtès
2008-11-19 14:46       ` Igor Chudov
2008-11-19 21:51         ` Ludovic Courtès

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).