Compiling on 64 bit SuSE (Was Re: List OK?)

Robert Heller heller at deepsoft.com
Mon Sep 5 17:40:07 EDT 2005


  Des Dougan <des at douganconsulting.com>,
  In a message on Mon, 05 Sep 2005 14:10:53 -0700, wrote :

DD> On Mon, 2005-09-05 at 12:44 -0700, Des Dougan wrote:
DD> > On Mon, 2005-09-05 at 14:08 -0400, Derek Atkins wrote:
DD> > > Quoting Des Dougan <des at DouganConsulting.com>:
DD> > > 
DD> > > > The make step has failed, though - something in make is looking at a 32
DD> > > > bit library instead of the 64 bit:
DD> > > 
DD> > > That's not surprising -- GnuCash 1.8 was never ported to 64-bit platforms...
DD> > > 
DD> > > > make[4]: Entering directory 
DD> > > > `/home/des/Downloads/tarballs/gnucash/gnucash-1.8.11/src/gnc-module'
DD> > > > /bin/sh ../../libtool --mode=link gcc -I../../src/core-utils 
DD> > > > -I/opt/gnome/include/glib-1.2 -I/opt/gnome/lib64/glib/include -I 
DD> > > > /usr/local/include/g-wrap  -g -O2 -Wall -Wunused    -o 
DD> > > > libgncmodule.la -rpath /usr/lib64 -module gnc-module.lo 
DD> > > > ../core-utils/libcore-utils.la -L/usr/local/lib -lgwrap-wct 
DD> > > > -lgwrap-glib -L/opt/gnome/lib64 -lglib -lltdl -lpopt -lm  -lm
DD> > > > gcc -shared  .libs/gnc-module.o  -Wl,--rpath 
DD> > > > -Wl,/home/des/Downloads/tarballs/gnucash/gnucash/src/core-utils/.libs 
DD> > > > -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/opt/gnome/lib64 
DD> > > > -Wl,--rpath -Wl,/usr/lib64 -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath 
DD> > > > -Wl,/opt/gnome/lib64  -L/usr/lib64 -L/opt/gnome/lib64 
DD> > > > ../core-utils/.libs/libcore-utils.so -L/usr/local/lib 
DD> > > > /usr/local/lib/libgwrap-wct.so /usr/local/lib/libgwrap-glib.so 
DD> > > > /opt/gnome/lib64/libglib.so /usr/lib/libltdl.so -lpopt -lm  
DD> > > > -Wl,-soname -Wl,libgncmodule.so.0 -o .libs/libgncmodule.so.0.0.0
DD> > > > /usr/lib/libltdl.so: could not read symbols: File in wrong format
DD> > > >
DD> > > > I've confirmed that there is a libltdl.so in the /usr/lib64 directory,
DD> > > > and I've gone through the configure script and the make man pages to
DD> > > > check how to inform make that it's a 64 bit compile, but can find
DD> > > > nothing that help me.
DD> > > 
DD> > > Sorry, don't know what to tell you...
DD> > > 
DD> > > > Am I missing something fundamental at the configure stage? The script
DD> > > > I'm using is as follows:
DD> > > >
DD> > > > #!/bin/sh
DD> > > > CC=gcc
DD> > > > CFLAGS=-O2
DD> > > > PATH="$PATH:/opt/gnome/bin"
DD> > > > (cd gnucash
DD> > > > rm -rf config.cache
DD> > > > ./configure --prefix=/opt/gnome --libdir=/usr/lib64 --enable-gui 
DD> > > > --enable-ofx \
DD> > > >        --build=x86_64-linux-gnu --disable-error-on-warning
DD> > > > )
DD> > > > # end of script
DD> > > >
DD> > > > Thanks,
DD> > > >
DD> > > > Des
DD> > > 
DD> > > Honestly, I don't know.  But I don't think 1.8 will build on 64-bit 
DD> > > platforms. I know a bunch of changes have gone into CVS to get gnucash 
DD> > > working on 64-bit
DD> > > platforms, but I'm fairly certain those didn't go into 1.8...   So it's quite
DD> > > likely you're working on a futile effort in any event.
DD> > 
DD> > Well, that is a major issue for me - the shipped gnucash on SuSE 9.3 has
DD> > a bug with importing OFX files (which I've reported to SuSE) and which
DD> > is why I built 1.8.11 on my previous box...
DD> > 
DD> > Thanks for all your help (and I see that my last email made it to the
DD> > list...).
DD> > 
DD> > Regards,
DD> > 
DD> > Des
DD> 
DD> 
DD> Well, I decided to press on. libltdl.so is a symbolic link to
DD> libltdl.so.1 in /usr/lib, so I created a new symbolic link to
DD> the /usr/lib64 directory. This got me further and carrying out the same

You *really* don't want to do this!  The libltdl.so.1 in /usr/lib is
most likely the *32* bit library.  The libraries in /usr/lib64 are the
64 bit libraries.  It is important to understand that the '64 bit' ix86
processors (eg AMD64, IS64), also run in 32-bit mode.  BUT a given
process is either in 32 or 64 bit mode.  You can switch modes within a
given process and thus you cannot link a 64-bit program with 32-bit
libraries.  You are probably missing the 64-bit version of libltdl.so OR
somehow the install of libltdl placed the 64 bit library in with the
32-bit libraries.

DD> steps again for subsequent links had "make" completing, apparently
DD> successfully. "make install" ran through, although it provided warnings
DD> about static libraries such as this example:



DD> 
DD> *** Warning: This system can not link to static lib archive ../../../src/business/business-ledger/libgnc-business-ledger.la.
DD> *** I have the capability to make that library automatically link in when
DD> *** you link to this library.  But I can only do this if you have a
DD> *** shared version of the library, which you do not appear to have.
DD> *** But as you try to build a module library, libtool will still create
DD> *** a static module, that should work as long as the dlopening application
DD> *** is linked with the -dlopen flag to resolve symbols at runtime.
DD> 
DD> I therefore tries running gnucash, but got the following failure:
DD> 
DD> des at sempron:~> gnucash
DD> ERROR: In procedure dynamic-link:
DD> ERROR: file: "libgw-gnc", message: "/usr/lib64/libgw-gnc.a: invalid ELF header"
DD> 
DD> Can anyone offer any pointers to the cause of this? 
DD> 
DD> Thanks,
DD> 
DD> Des
DD> -- 
DD> 
DD> Des Dougan, Principal
DD> Dougan Consulting Group
DD> 
DD> Ph: 604-980-2848       Email: des at DouganConsulting dot com     
DD> 
DD>         www.DouganConsulting.com
DD> 
DD> Design - Implementation - Support
DD> 
DD> _______________________________________________
DD> gnucash-user mailing list
DD> gnucash-user at gnucash.org
DD> https://lists.gnucash.org/mailman/listinfo/gnucash-user
DD> 
DD>                                                                                      

                                     \/
Robert Heller                        ||InterNet:   heller at cs.umass.edu
http://vis-www.cs.umass.edu/~heller  ||            heller at deepsoft.com
http://www.deepsoft.com              /\FidoNet:    1:321/153






                           


More information about the gnucash-user mailing list