[Csnd] Re: Re: Re: Re: Re: can't import csnd from python
Date | 2007-11-06 02:25 |
From | "Michael Gogins" |
Subject | [Csnd] Re: Re: Re: Re: Re: can't import csnd from python |
The nm output tells us that _csnd.so does indeed define
csoundSetKillXYinCallback. U means 'undefined' and 'T' means 'program text,'
which means 'defined.'
The ldd output suggests that _csnd.so is not finding
csound32.so.5.1 or csound64.so.5.1.
Probably all you need to do is add something to your shell
initialization script to add your Csound bin directory (assuming it contains the
shared libraries and python file mentioned below) to LD_LIBRARY_PATH and to your
PYTHONPATH.
Regards,
Mike
As I mentioned before, the hierarchy of libraries is as
follows. All of the .so files have to be in your ldconfig or in a
LD_LIBRARY_PATH environment variable. All of the .pyd files (for Python 2.5) or
_XXX.so files (for earlier versions of Python) and corresponding .py files
have to be in Python's site-packages directory, or in a PYTHONPATH environment
variable. If you are not using CsoundAC you can stop with csnd.py. On Linux,
just substitute .so for .dll.
csound64.dll.5.1, the Csound C API shared library, in other words Csound
proper, which is dynamically linked to by... csnd.dll, which implements CppSound, a C++ wrapper for the Csound C API, which also includes the ability to load and save Csound files to and from internal storage, pick arrangements out of Csound orchestras, and so on, which is dynamically linked to by CsoundAC.dll and also by... _csnd.pyd, SWIG-generated C stubs for CppSound, in other words, a low-level procedural Python extension module for CppSound named _csnd, which is dynamically LOADED by... csnd.py, SWIG-generated Python class proxies for _csnd, in other words, a high-level object-oriented Python extension module for CppSound named csnd, which is loaded by Python scripts that use Csound; CsoundAC.dll, a C++ class library for algorithmic composition (which also links with csnd.dll), which is dynamically linked to by... _CsoundAC.pyd, SWIG-generated C stubs for the classes in CsoundAC, in other words, a low-level procedural Python extension module for the CsoundAC classes named _CsoundAC, which is dynamically LOADED by... CsoundAC.py, SWIG-generated Python class proxies for _CsoundAC, in other words, a high-level object-oriented Python extension module for the CsoundAC classes named CsoundAC, which is loaded by Python scripts that use CsoundAC.
|