py
py copied to clipboard
Cannot compile py to use flext ( recompile to use -fPIC)
In flext, i specified CXXFLAGS & CPPFLAGS = "-fPIC" make
and compiled flext. The compilation completes and the scrolling logs have "-fPIC -DPIC".
In py, when compiling, i get this error message about flext.
symbol `_ZTV11TableAnyMap' can not be used when making a shared object; recompile with -fPIC
How do i resolve this issue?
it's for linux. Flext and py are from the repository. it could be it's trying to link against a static library vs a .so lib.
Hi, i can't reproduce this behavior when using the flext build system (build.sh script). By which means have you tried the compilation?
i'm using:
in the py directory, do ../flext/build.sh pd gcc build .
I've defined the PKG_CONFIG_PATH=
It's probably just an incorrect invocation at this linking stage - something with how the library is being linked. How are you doing it? BTW my git describe --tag is v0-2-2-14-g6d47a22
I think the buildsys/lnx/*.def files don't take into account the PREFIX path or the path to the specified pd source or local flext installation or where py is supposed to be installed ( INSTPATH )
I've managed to compile this v0-2-2-14-g6d47a22 version, by explicitly including the -I -L flags for the particular flext install that i have. But during runtime i'm getting this : undefined symbol: _ZTI16flext_base_multi
I've changed the runpath of the py.pd_linux to point to the directory of the new flext install, and i've trawled the older libflext for this particular symbol but it isn't there. Is this a multiarch thing? What libflext should i be using?
I managed to solve the flext_base_multi problem by ( i did not revert changes to double check ):
- changing the flext/buildsys/lnx/pd/config-gcc.dev to point to the relevant pure data sources, install path
- removing all of this particular flext
- rebuild, reinstall with --enable-static --enable-shared explicitly defined
- for flext: the build.sh pd gcc build . yields this error at first
------------------------------------------------------------------------- A default package configuration file has been created. Please edit config.txt, then start again.
-------------------------------------------------------------------------make: *** [buildsys/gnumake.mak:121: config.txt] Error 1
- But a subsequent
./build.sh pd gcc build
results in a successful compile of flext - From the py directory,
../flext/build.sh pd gcc build & install
- from pure data [ py ] and it worked
I guess the question now is how to run the python scripts
Running the [py ] scripts sometimes segfaults. Also is pyext wheel supposed to be built together with this project? Because i cannot find it. Is there documentation on how to get this working?