OESF Portables Forum
Everything Else => Sharp Zaurus => Model Specific Forums => Distros, Development, and Model Specific Forums => Archived Forums => 5x00 General discussions => Topic started by: doug-taylor on November 07, 2007, 03:30:51 pm
-
Hi.
I've got a 5500 running Opie under OZ 3.5.3. I'm trying to get flite (Festival-lite, the text-to-speech program) running. I have downloaded both 1.1 and 1.2, but haven't had any luck getting either one to work properly. When I run a command like
echo "hello world"|flite
all I get is a squawk, sort of like the sound I made once when I got hit by a baseball in a very bad place. :-) If I try flite on a longish text file, I just get a series of squawks.
Is there something else I need to install, like a library or a voice file? The docs seem to indicate that all I need is the flite binary. Has anyone got this working on a 5500?
Incidently, the flite_time program (which speaks the time in a Scottish accent) runs great.
-
A long time ago, I used flite (flite16k is the name of the binary) on my 5000D, with the Sharp ROM without any problems. Just the binary should be enough, maybe the problem is something to do with Open Zaurus.
-
I was afraid it might be something like that. I tried using makecompat on it, but it still gives me the same squawk.
-
I have flite on my Collie with Sharp ROM 2.38 and it works just fine. Ran some tests as haven't used it in a long time and the following formats all worked okay. Note that I backgrounded it so I could run lsof to see what files it was accessing while running:
# echo hello | flite
# cat myfile.txt | flite &
[1] 30187
# lsof | grep flite > lsofflite
# flite myfile.txt
Here's my output from "lsof" in case it is of interest to anyone.
flite 30187 root cwd DIR 31,1 48128 3523 /home/root
flite 30187 root rtd DIR 31,0
224 76 /
flite 30187 root txt REG 60,1 5906468 227630 /usr/mnt.rom/card/Flite/flite
flite 30187 root mem REG 31,0 105908 1293808 /lib/ld-2.2.2.so
flite 30187 root mem REG 31,0 163740 1922260 /lib/libm-2.2.2.so
flite 30187 root mem REG 31,0 1152468 1349952 /lib/libc-2.2.2.so
flite 30187 root 0r FIFO 0,0
588551 pipe
flite 30187 root 1u CHR 3,176
214 /dev/ttya0
flite 30187 root 2u CHR 3,176
214 /dev/ttya0
flite 30187 root 3u unix 0xc1ce8520
588504 socket
flite 30187 root 4u CHR 29,0
42 /dev/fb0
flite 30187 root 5u CHR 2,176
127 /dev/ptya0
flite 30187 root 6w CHR 14,3
38 /dev/dsp
flite 30187 root 7u REG 31,1
0 7076 /home/tmp/tmpfR7OuQf (deleted)
flite 30187 root 8u REG 31,1
0 7089 /home/tmp/tmpfyps3ql (deleted)
grep 30200 root 1w REG 31,1
0 6215 /home/root/lsofflite
I used it with an earbud plugged into the microphone jack. Did you also try adjusting the volume?
If you have those libraries, I could be wrong but I should think it would work as well on an Opie ROM. Do you want me to zip up my copy and put it somewhere for the heck of it?
sdjf
-
Thanks for checking this. I have ld-2.3.3.so, not ld-2.2.2.so. Ditto with libm and libc -- they're both version 2.3.3, not 2.2.2. Maybe that's the problem. It's weird, though, that the time program works fine.
I wondered if it just needs to be recompiled for Opie . . .
-
I would try symlinking first. I have written up an example of symlinks in my IPK Installation Guide:
http://www.sdjf.esmartdesign.com/ipks/install.html#depend (http://www.sdjf.esmartdesign.com/ipks/install.html#depend)
In your case, I would try something like:
ln -s /lib/libc-2.3.3.so /lib/libc-2.2.2.so
Try making symlinks for all 3 missing libraries. If that doesn't work you could rm the symlinks with "rm" command, do NOT use file manager as it might also remove the 2.3.3 libs as well.
You could try recompiling I suppose, but first maybe you should install those other versions of the libraries. I've had to do that with some things...have more than one version of a library.
sdjf
-
Hmmm. I tried sym-linking and got the same result. Actually, that's kind of what I expected. If the program were looking for libs that didn't exist, I'd think it would just fail with a "library not found" message. That's not what I get; the program seems to work fine, but the output is garbled beyond recognition.
My guess is that flite calls ld-linux.so.2 (which is sym-linked to ld-2.3.3.so), libc.so.6 (which is linked to libc.2.3.3.so), and libm.so.6 (which is linked to libm.2.3.3.so). The thing to try, I suppose, is to temporarily change those links to point to the 2.2.2 versions and see what happens. Would you be able to get me copies of the 2.2.2 versions of these three libraries?
-
I'll work on it...give me a few days.
sdjf
-
Ugh...this may get complicated...I just ran ldd on flite:
bash# ldd /usr/sbin/flite
libm.so.6 => /lib/libm.so.6 (0x40022000)
libc.so.6 => /home/QtPalmtop/lib/libc.so.6 (0x40050000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
bash#
_
That doesn't agree with the lsof output...saga to be continued...
sdjf
-
Hmm. Interesting.
Well, don't put yourself out too much. I can do what I want in other ways. This is just one of those "Gee, it would be even cooler if I could . . ." situations. Thanks for all your help so far.
-
Coming up with the space to tar these together is a major issue so I'll try uploading here. I checked the ldd libs and they are symlinks to the 2.2.2 versions.
Here goes...you may get three attachments, otherwise, it'll be tough work.
Uh...don't see a way to upload attachments here using Lynx. If you really want it, I will go further later in the weekend. You also could check the feeds for sl5500 versions of these libs.
sdjf
-
You don't have to go to all that trouble. I'll look around. Thanks.
-
Problem solved!
I checked in the OZ 3.5.4 feed (one sub-level higher than my Z is at) and it has flite in it. I downloaded and installed the flite package and the two libflite packages. Now it works. Yay!
-
Right on! I actually already gzipped up the libraries. Oh well. If anyone wants them and can't find them otherwise, give a yell.
sdjf