Date: Sat, 23 Oct 2004 00:07:33 EST-10EDT,10,-1,0,7200,3,-1,0,7200,3600 Subject: [Ux2bs_Archive] No. 356 ************************************************** Friday 22 October 2004 Number 356 ************************************************** Subjects for today 1 porting HTK : Christoph Kloeters" 2 Re: porting HTK : John Poltorak 3 Re: porting HTK : Stefan.Neis at t-online.de 4 Re: porting HTK : Christoph Kloeters" 5 Re: porting HTK : Christoph Kloeters" 6 Re: porting HTK : Christoph Kloeters" 7 Re: porting HTK : John Poltorak 8 Re: porting HTK : Christoph Kloeters" 9 Re: porting HTK : Christoph Kloeters" 11 Re: porting HTK : Sebastian Wittmeier" 1 Re: porting HTK : Sebastian Wittmeier" **= Email 1 ==========================** Date: Thu, 21 Oct 2004 20:30:27 +0200 (CEST) From: "Christoph Kloeters" Subject: porting HTK Hi together! Hm, I donīt know, whether thatīs the correct place for my question. If not, I am prepared to be blamed.. :-) But I also donīt have any idea where it might be better.... Okay, I try to port the HAPI-Toolkit, a speech-recognition framework from Linux/Windows to OS/2 using ux2bs. The first steps seem to work very simple, just set the appopriate variables (e.g. HTKCC=gcc, LIBEXT=dll), then "make" and make runs very far, really no problems with any missing libraries or so. But then I get a HTrain.c:1518 (../HTKLib/HTKLib.OS2.a(HTrain.o)): Undefined symbol _finite referenced from text segment In HTain.h there is a #ifdef WIN32 #define finite _finite #endif If I do that define also for OS/2, the error is then HTrain.c:1518 (../HTKLib/HTKLib.OS2.a(HTrain.o)): Undefined symbol __finite referenced from text segment (two underscores instead of one before). Any idea for me, what to do? TIA! Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 2 ==========================** Date: Thu, 21 Oct 2004 19:56:06 +0100 From: John Poltorak Subject: Re: porting HTK On Thu, Oct 21, 2004 at 08:30:27PM +0200, Christoph Kloeters wrote: > Hi together! > > Hm, I donīt know, whether thatīs the correct place for my question. If > not, I am prepared to be blamed.. :-) > But I also donīt have any idea where it might be better.... Hi Christoph, The UX2BS list is mainly for testing out the build system itself rather than an aid to porting. Porting questions and help with compile problems are better addressed on the os2-unix mailing list. You are welcome to join which you can do by using this link:- mailto:os2-unix-request at warpix.org?body=subscribe > TIA! > Greetings, > Christoph -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 3 ==========================** Date: Fri, 22 Oct 2004 00:12:10 +0100 From: Stefan.Neis at t-online.de Subject: Re: porting HTK Hi, > HTrain.c:1518 (../HTKLib/HTKLib.OS2.a(HTrain.o)): Undefined symbol > _finite referenced from text segment (snipp) > Any idea for me, what to do? Find out, what "finite" is supposed to be and by which OS/2 function it might be replaced, then add something like #ifdef __EMX__ #define finite suitable_OS2_function #endif Or, if it's something that's supposed to be part of the library, find out why it's source code is apparently not compiled for OS/2? HTH, Stefan _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 4 ==========================** Date: Fri, 22 Oct 2004 09:07:51 +0200 (CEST) From: "Christoph Kloeters" Subject: Re: porting HTK Hi Stefan! On Fri, 22 Oct 2004 00:12:10 +0100, Stefan.Neis at t-online.de wrote: >Find out, what "finite" is supposed to be and by which OS/2 >function it might be replaced, then add something like >#ifdef __EMX__ >#define finite suitable_OS2_function >#endif >Or, if it's something that's supposed to be part of the library, >find out why it's source code is apparently not compiled for OS/2? Hmm, not trivial question. finite() is a function to determine, if a variable has an overflow (inf). I dont know, whtether its an makro, or compiler-intern function or whatwever. The sourcecode for linux has no other#define oder definition for that function, does not link to any library nor does #include any headers except from the project. And the Windows-code only has this #define finite _finite I dont have any idea, where that function comes from. Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 5 ==========================** Date: Fri, 22 Oct 2004 12:24:46 +0200 (CEST) From: "Christoph Kloeters" Subject: Re: porting HTK Hi Sebastian! On Fri, 22 Oct 2004 11:34:23 +0200 (CEST), Sebastian Wittmeier wrote: >Please try >#define finite isfinite > >The finite function is implemented by Posix, but not by normal >emx/Innotek gcc. >It is included by the header file. Lets see.... Cool! There was some editing of the Makefile ( HSGen: $(hlib)/HTKLib.$(CPU).a HSGen.o $(CC) HSGen.o $(HLIBS) -lm $(HTKLF) mv a.out $(HBIN)/bin.$(CPU)/HSGen -> HSGen: $(hlib)/HTKLib.$(CPU).a HSGen.o $(CC) HSGen.o $(HLIBS) -lm $(HTKLF) # mv a.out $(HBIN)/bin.$(CPU)/HSGen ). Now everything comiled and linked. Now lets see, whether the test-classificator (perl-script) runs through. Then I might be able to finish my diploma-thesis under OS/2 :-) Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 6 ==========================** Date: Fri, 22 Oct 2004 12:50:40 +0200 (CEST) From: "Christoph Kloeters" Subject: Re: porting HTK Hi again! On Fri, 22 Oct 2004 12:24:46 +0200 (CEST), Christoph Kloeters wrote: >Now lets see, whether the test-classificator (perl-script) runs >through. One perl-call later: I get several "Assertion failed: x.n == 2, file E:/GCC2/BUILDS/BETA3/src/emx/src/lib/conv/atod.c, line 358" Hm..... at least it was a nice idea! Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 7 ==========================** Date: Fri, 22 Oct 2004 14:01:07 +0100 From: John Poltorak Subject: Re: porting HTK On Fri, Oct 22, 2004 at 12:24:46PM +0200, Christoph Kloeters wrote: > Hi Sebastian! > > On Fri, 22 Oct 2004 11:34:23 +0200 (CEST), Sebastian Wittmeier wrote: > > >Please try > >#define finite isfinite > > > >The finite function is implemented by Posix, but not by normal > >emx/Innotek gcc. > >It is included by the header file. > > Lets see.... > > Cool! > > There was some editing of the Makefile > ( > HSGen: $(hlib)/HTKLib.$(CPU).a HSGen.o > $(CC) HSGen.o $(HLIBS) -lm $(HTKLF) > mv a.out $(HBIN)/bin.$(CPU)/HSGen > -> > HSGen: $(hlib)/HTKLib.$(CPU).a HSGen.o > $(CC) HSGen.o $(HLIBS) -lm $(HTKLF) > # mv a.out $(HBIN)/bin.$(CPU)/HSGen > ). > Now everything comiled and linked. When you do get everything working, can you provide some patches and I'll include htk in UX2BS so that it should be possible to simply run 'build htk'. BTW does HTK have a webpage? > Now lets see, whether the test-classificator (perl-script) runs > through. > > Then I might be able to finish my diploma-thesis under OS/2 :-) Sounds good. Best of luck! > Greetings, > Christoph -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 8 ==========================** Date: Fri, 22 Oct 2004 15:15:35 +0200 (CEST) From: "Christoph Kloeters" Subject: Re: porting HTK Hi John! On Fri, 22 Oct 2004 14:01:07 +0100, John Poltorak wrote: >When you do get everything working, can you provide some patches and I'll >include htk in UX2BS so that it should be possible to simply run 'build >htk'. As I already wrote in another mail, I get some assertions in gcc-code, when executing the htk-Tools. But I will try another gcc-version and make some test to perhaps get it running in another way. Hm, I dont know, if its a good idea to integrate HTK into uxbs. HTK isnt a complete dictation-system. It is an Toolkit to build speech-recognition systems like dialog-applications or isolated word-recognition or continous-speech recognition tools by yourself, using Hidden Markov Models. And you have to have much knowledge about speech-recognition: feature-extraction, phones/di-phones/tri-phones, dictionaries, Hidden Markov Moddels, etc.. The HTK-Tools and sourcecode is not free for download, you have to register with your e-mail-Adress, then you get a password and can get it. The license is also not GNU, some copyrights of the sources belong to *duck* ... MS I thought about giving my diffs back to the developers, they also have a binary and source-version for windows at the moment (with also a very slight diff), they could publish the binaries and source also for OS/2. BTW, the sources now have no possibility to get live-audio under OS/2. Under Linux, they seem to use OSS, under Windows, I dont know, but it works (tested, when I compiled HAPI under Windows some time ago). >BTW does HTK have a webpage? Yes, its further developed at the moment from an english university: http://htk.eng.cam.ac.uk >Sounds good. Best of luck! Thanks, but looks, like there is still some work to do. Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 9 ==========================** Date: Fri, 22 Oct 2004 15:36:58 +0200 (CEST) From: "Christoph Kloeters" Subject: Re: porting HTK Hi! Aha, again one step further: Using gcc 3.2.1 instead of gcc 3.2.2 I get a bit better results, but: #ifdef UNIX /* Prototype for C Library functions drand48 and srand48 */ double drand48(void); void srand48(long); #define RANDF() drand48() #define SRAND(x) srand48(x) #else /* if not unix use ANSI C defaults */ #define RANDF() ((float)rand()/RAND_MAX) #define SRAND(x) srand(x) #endif here under gcc 3.2.1 LINUX seems to be defines, which was not the case under 3.2.2 ??!?!?!?! No scripting in this project, no configure, no automake, just make. At the moment I have no spare time for testing, but know things look a little better. Greetings, Christoph _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 11 ==========================** Date: Fri, 22 Oct 2004 11:34:23 +0200 (CEST) From: "Sebastian Wittmeier" Subject: Re: porting HTK On Fri, 22 Oct 2004 09:07:51 +0200 (CEST), Christoph Kloeters wrote: >I dont have any idea, where that function comes from. Please try #define finite isfinite The finite function is implemented by Posix, but not by normal emx/Innotek gcc. It is included by the header file. Sebastian _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 1 ==========================** Date: Fri, 22 Oct 2004 11:34:23 +0200 (CEST) From: "Sebastian Wittmeier" Subject: Re: porting HTK On Fri, 22 Oct 2004 09:07:51 +0200 (CEST), Christoph Kloeters wrote: >I dont have any idea, where that function comes from. Please try #define finite isfinite The finite function is implemented by Posix, but not by normal emx/Innotek gcc. It is included by the header file. Sebastian _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs