On a 64bit OS install all the system libraries, or at least a large
majority are going to built as 64 bit libraries.  So the obvious
question is do you even have 32 bit versions installed to link a 32 bit
ActiveMQ CPP library against?  You may want to look at the GNU Libtool
documentation to see what support they have for cross compilation.  

Regards
Tim.

On Tue, 2008-04-08 at 23:00 -0700, sfred wrote:
> Vic,
> 
> I appreciate you taking the time to write this information, but I guess I
> didn't provide enough information for you to answer the problem I'm having.  
> 
> 1.  I'm trying to build ActiveMQ-CPP (not ActiveMQ). (I know the process is
> the same for either one, but I thought I'd be clear.)
> 
> 2.  I'm trying to build a 32-bit ActiveMQ-CPP library on a Sun V40Z (AMD
> x86, 64-bit processor).  When I use the autotools to do this, I am able to
> get the object files (*.o) built as a 32-bit object file, but when libtool
> kicks off, it defaults to using the lib64 (64-bit) linking and fails because
> it complains the 64-bit libraries it is trying to link in are not compatible
> with the 32-bit .o files that I've built.  Our software application is
> 32-bit, so that's why I need a 32-bit version of ActiveMQ-CPP.
> 
> Hopefully someone can tell me of an option or argument to feed into
> ./autogen.sh or a way to run libtool (e.g. libtool ...) to get the object
> files linked together into the necessary libraries to link our 32-bit
> application against.
> 
> Thanks
> 
> Scott
> 
> 
> 
> vschrader wrote:
> > 
> > Fred, you don't mention it, but of course you need to have cppunit
> > compiled as a prerequisite. As far as autogen.sh, you just run it or say
> > './autogen.sh', and generate an executable rwxr-xr-x shell script called
> > configure.  If you just say ./configure with no options, it will generate
> > a Makefile for you, which you then just say 'make' or 'make -f Makefile'
> > and that should be the whole deal, except for the fact that you may need
> > to put the libccpunit.a on the LD_LIBRARY_PATH, or the .so version
> > depending on how the Makefile is generated.
> > 
> > On the cppunit project I did ./configure; make; make install; and that
> > puts libcppunit.a and libccpunit.so, etc. in /usr/local/lib
> > 
> > Subsequent to that you will have executables for 3 separate executables
> > call something like:
> > 
> > activemq
> > activemq-examples
> > activemq-integration-tests
> > 
> > If you run the examples, it starts up the producer and then the consumer
> > in sequence, they would normally be split apart in to separate run units,
> > perhaps running against different brokers even.
> > 
> > This is pretty much standard Linux fare, if there is a file named
> > 'configure' make sure it is 'chmod 755 configure' and execute it to
> > produce the Makefile, then just say 'make' and make install'.  These steps
> > will get you to the place were you have an execuble that should run.
> > 
> > Vic.
> > 
> > 
> > sfred wrote:
> >> 
> >> How do I build a 32-bit ActiveMQ-CPP for Linux for AMD (x86) platform? 
> >> I've tried various combinations to get it built, but I keep running into
> >> roadblocks.  
> >> 
> >> The most obvious thing for me to try was:
> >> 
> >> ./configure CXXFLAGS=-m32 
> >> 
> >> That seemed to compile it for 32-bit, but when it came to liniking, the
> >> libtools had been build to use the lib64 libraries and so I was getting
> >> incompatible ELF messages.
> >> 
> >> I looked into modifications for ./autgen.sh, but I couldn't figure out
> >> what options to give it to tell it to build a 32-bit binary.
> >> 
> >> Any help would be appreciated.
> >> 
> >> Scott
> >> 
> > 
> > 
> 

Reply via email to