Hello!
Le samedi 09 juin 2007 à 01:22 +0200, Bryan Jurish a écrit :
-fPIC should be linux-safe; I'm actually surprised it wasn't there already... at any rate, it's there now (in cvs): thanks for the report. just for the record, what happened when you tried to compile without -fPIC ?
The source files came from http://www.ling.uni-potsdam.de/~moocow/projects/pd/:
$ ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for a BSD-compatible install... /usr/bin/install -c checking for flite.h... yes checking for flite_init in -lflite... yes checking for cmu_lex_init in -lflite_cmulex... yes checking for usenglish_init in -lflite_usenglish... yes checking for register_cmu_us_kal in -lflite_cmu_us_kal16... yes checking whether we are building a debug version... no configure: creating ./config.status config.status: creating config/Makefile config.status: WARNING: config/Makefile.in seems to ignore the --datarootdir setting config.status: creating Makefile config.status: WARNING: Makefile.in seems to ignore the --datarootdir setting config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands
$ make
make all-recursive
Making all in config
if gcc -DHAVE_CONFIG_H -I. -I. -I. -DHAVE_CONFIG_H -I/usr/local/pd/src
-I/usr/include/flite -O6 -funroll-loops -fomit-frame-pointer -Wall
-MT flite.o -MD -MP -MF ".deps/flite.Tpo" -c -o flite.o flite.c;
then mv -f ".deps/flite.Tpo" ".deps/flite.Po"; else rm -f
".deps/flite.Tpo"; exit 1; fi
gcc -O6 -funroll-loops -fomit-frame-pointer -Wall -o flite.pd_linux
-L/usr/lib -export_dynamic -shared flite.o -lflite_cmu_us_kal16
-lflite_usenglish -lflite_cmulex -lflite -lm
/usr/bin/ld: flite.o: relocation R_X86_64_32 against `a local symbol'
can not be used when making a shared object; recompile with -fPIC
flite.o: could not read symbols: Bad value
The attached file is a modification of the help patch I've made for resolving a buffer issue, I've just added a banged message [;array const 0( before flite computes the voice, for emptying the buffer, it's one method among many others...
what happens on your system if you don't explicitly zero the array before re-synthesis?
If I want to process a long sentence and after, a short one, I still have the end of the long sentence into the table. Thanks for the configure advice, Patko