|
From: Jonathan D. <jo...@js...> - 2008-11-26 19:20:24
|
On 26 Nov, Eric Archangel <eri...@gm...> wrote: > I try to compile it in my Mac as followings > 1, I downloaded speak-1.37-source > 2, cd speak-1.37-source/src > 3, make > found error > ld: library not found for -lportaudio > 4, I comment #AUDIO = portaudio > found error > In file included from event.cpp:39: > debug.h:19:21: warning: anonymous variadic macros were introduced in C99 > event.cpp: In function 'int sleep_until_timeout_or_stop_request(uint32_t)': > event.cpp:403: error: 'sem_timedwait' was not declared in this scope > make: *** [x_event.o] Error 1 There are two problems here. 1. The "portaudio" library is not installed on your computer. eSpeak uses this for sound output. You can still compile the stand-alone "speak" program (instead of "espeak" + "libespeak"). Remove this line from the makefile: AUDIO = portaudio Without portaudio, "speak" can still produce WAV files, eg: speak -v en -w output.wav "Hello world" but it can't play sound directly on the computer. 2. The system library function sem_timedwait() is not available. It should be defined in the header file: #include <semaphore.h> but perhaps it is not available on Mac? This problem will not affect the compilation of the stand-alone "speak" program. |