Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #86512

Re: Building C++ modules for python using GNU autotools, automake, whatever

Subject Re: Building C++ modules for python using GNU autotools, automake, whatever
From Jason Swails <jason.swails@gmail.com>
Date 2015-02-26 11:35 -0500
References <364c8f3d-808e-4513-9041-6d8cdfdc42b7@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.19266.1424968500.18130.python-list@python.org> (permalink)

Show all headers | View raw


On Thu, 2015-02-26 at 07:57 -0800, af300wsm@gmail.com wrote:
> Hi,
> 
> I'm a complete neophyte to the whole use of GNU
> autotools/automake/auto... .  (I'm not sure what it should be called
> anymore.)  Regardless, I'm porting a library project, for which I'm a
> team member, to using this toolset for building in Linux.  I'm to the
> point now of writing the Makefile.am file for the actual library.
> (There are several other static libraries compiled first that are
> sucked into this shared object file.)  
> 
> I found some references here:
> http://www.gnu.org/savannah-checkouts/gnu/automake/manual/html_node/Python.html, which seemed to be just what I was after.  However, I've got a big question about a file named "module.la" instead of "module.so" which is what we compile it to now.

I certainly hope module.la is not what it gets compiled to.  Open it up
with a text editor :).  It's just basically a description of the library
that libtool makes use of.  In the projects that I build, the .la files
are all associated with a .a archive or a .so (/.dylib for Macs).
Obviously, static archives won't work for Python (and, in particular, I
believe you need to compile all of the objects as position independent
code, so you need to make sure the appropriate PIC flag is given to the
compiler... for g++ that would be -fPIC).
> 
> I guess I should have mentioned some background.  Currently, we build
> this tool through some homegrown makefiles.  This has worked, but
> distribution is difficult and our product must now run on an embedded
> platform (so building it cleanly requires the use of autotools).  
> 
> Basically, I need this thing to install
> to /usr/lib/python2.6/site-packages when the user invokes "make
> install".  I thought the variables and primaries discussed at the link
> above were what I needed.  However, what is a "*.la"?  I'm reading up
> on libtool now, but will it function the same way as a *.so?

To libtool, yes... provided that you *also* have the .so with the same
base name as the .la.  I don't think compilers themselves make any use
of .la files, though.

HTH,
Jason

-- 
Jason M. Swails
BioMaPS,
Rutgers University
Postdoctoral Researcher

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Building C++ modules for python using GNU autotools,automake,whatever af300wsm@gmail.com - 2015-02-26 07:57 -0800
  Re: Building C++ modules for python using GNU autotools, automake, whatever Jason Swails <jason.swails@gmail.com> - 2015-02-26 11:35 -0500
    Re: Building C++ modules for python using GNU autotools, automake, whatever af300wsm@gmail.com - 2015-02-26 10:25 -0800

csiph-web