Build and runtime dependencies

J

Jack Silver

I have two Linux From Scratch machine.

On the first one (the server), I want to build install python 3.3.0 in a
shared filesystem and access it from the second one (the client). These
machines are fairly minimal in term of the number of software installed. I
just want to install python on this filesystem and anything else.

I would like to know what are the build and runtime dependencies that are
needed on both machine.

My understanding is that the core CPython interpreter only needs a C
compiler to be built. For the extension modules, I think that only the
development headers of some additional libraries are needed on the server
machine. Hence, I do not need to install all those libraries on the client
machine. Right ?

I would like to build as much module I can, so I have a complete python
installation. Here is the list of dependecies I think I need to install on
the server machine :

expat
bzip2
gdbm
openssl
libffi
zlib
tk
sqlite
valgrind
bluez

anything ? Is there anything I need to install on the client too ?

Thanks

Jack
 
M

Miki Tebeka

I have two Linux From Scratch machine.
Hence, I do not need to install all those libraries on the client machine. Right ?
It depends on what the client needs. For example if you use zlib compression in the protocol, you'll need this in the client as well to uncompress.

I suggest you use the exact same Python builds on both machines, it'll save you some headache in the future.
 
M

Miki Tebeka

I have two Linux From Scratch machine.
Hence, I do not need to install all those libraries on the client machine. Right ?
It depends on what the client needs. For example if you use zlib compression in the protocol, you'll need this in the client as well to uncompress.

I suggest you use the exact same Python builds on both machines, it'll save you some headache in the future.
 
H

Hans Mulder

I have two Linux From Scratch machine.

On the first one (the server), I want to build install python 3.3.0 in a
shared filesystem and access it from the second one (the client). These
machines are fairly minimal in term of the number of software installed.
I just want to install python on this filesystem and anything else.

I would like to know what are the build and runtime dependencies that
are needed on both machine.

My understanding is that the core CPython interpreter only needs a C
compiler to be built.

You need the whole C toolchain: compiler, linker, make, etc.
For the extension modules, I think that only the
development headers of some additional libraries are needed on the
server machine. Hence, I do not need to install all those libraries on
the client machine. Right ?

Wrong.

Those libraries are typically shared libraries (i.e. .so files). You'll
have to install the shared libraries on both the server and the clients.

The development headers are used only at build time, so they are only
needed on the server.

I don't know the package naming conventions on your distro, but on
Debian the packages you only need on the server tend to contain the
word "dev". For example, 'sqlite' would be installed on the client
and bots 'sqlite' and 'sqlite-dev' on the server.
I would like to build as much module I can, so I have a complete python
installation. Here is the list of dependecies I think I need to install
on the server machine :

expat
bzip2
gdbm
openssl
libffi
zlib
tk
sqlite
valgrind
bluez

anything ?

The source comes with a script named "configure" that tries to find
the headers it needs to build as many extensions modules as possible.

When the script is done, it prints a list of modules it could not
find the headers for. When this list contains modules you'd like
to build, that means that you're still missing some depencency.

Keep in mind that some modules cannot be built on Linux (for example,
the MacOS module can only be built on MacOS Classic), so you shouldn't
expect to be able to build everything.
Is there anything I need to install on the client too ?

Yes, the .so files, the actual shared libraries used by these
extensions.


Hope this helps,

-- HansM
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top