[liblouis-liblouisxml] Re: Question aout liblouisxml structure

  • From: Yuemei Sun <yuemei.sun@xxxxxxxxxxxx>
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Thu, 05 Feb 2009 12:29:22 -0800

Hi, Michel,

Thank you for your effort of building a Windows binary. We have been compiling the Windows binary (DLL) by ourselves and have to do so whenever we want to include a new release into our braille translation program (a VB6 Office plug in project). I just tried calling "lou_version" and "lou_translateString()" that are exported from liblouis.dll from our VB6 project, and "lou_version()" works fine. However, with "lou_translateString()", I got "Bad Calling Convention Error". Which calling convention do you use for the exported functions, C calling convection (__cdecl) or the WINAPI (__stdcall)? Our program expects a WINAPI calling convention. BTW, I double checked the parameter list of lou_translateSttring() in the doucmentation coming with your ZIP file; it is the same as in liblouis 1.3.9 (the version we use in our current braille translation program), so there is nothing wrong with the number or the type of of parameters passed from our program into the DLL.
Thanks,

Yuemei

Michel such wrote:

John,

At this point, I can propose a simple zip file with all the binaries.
You only have to unzip it and can run the programs from its bin subdirectory.
This can be done at once.
In the future, I would like to add some bells and whistles like an installer 
and some gui environment.

But for now, you can download the zip file at:
http://www.nvda.fr/dl/liblouisxml-1.8.0-win32.zip

Unzipping it will create a louis directory that you can place anywhere.
The archive also contains antiword for convenience.

----- Original Message ----- From: John J. Boyer To: liblouis-liblouisxml@xxxxxxxxxxxxx Sent: Thursday, February 05, 2009 6:31 PM
 Subject: [liblouis-liblouisxml] Re: Question aout liblouisxml structure


 Michel,

This is something I've been wanting for a long time. I assume that the binary is a zip file. It should need only a few simple installation instructions. Can you put the zip file and the instructions on a website and post a link to the list?

I know you had a hard time reaching this goal, and I'm rather concerned that your setup with mingw, etc. might be hard to duplicate.

 Thanks,
 John

 On Thu, Feb 05, 2009 at 06:04:26PM +0100, Michel such wrote:
 > John,
> > Just tested it on my wife's machine which is free of any development environment (no mingw or cygwin)
 > and it works fine.
> > I'll let you know how to build it (at least under mingw). > > It is straight forward for liblouis and libxml2.
 > For liblouisxml, you need to install pkg-config which I spent spme time to 
setup correctly.
> > ----- Original Message ----- > From: John J. Boyer > To: liblouis-liblouisxml@xxxxxxxxxxxxx > Sent: Thursday, February 05, 2009 5:30 PM
 >   Subject: [liblouis-liblouisxml] Re: Question aout liblouisxml structure
> > > Michel, > > This is great. I think your paths.c can be combined with the original > one to handle all situations. Can you make the binary and then test it > on machines that don't have either Mingw or Cygwin? If it works under > those circumstances we can figure out the best way to distribute it. > Please also give me a description of how you made it. > > Thanks,
 >   John
> > On Thu, Feb 05, 2009 at 05:09:55PM +0100, Michel such wrote:
 >   > Hi John,
> > > > Oops, I understand the problem. > > > > So this new one seems to work fine, at least it finds all needed files on my machine (liblouis tables and lbx files).
 >   > So, here it is attached.
> > > > ----- Original Message ----- > > From: John J. Boyer > > To: liblouis-liblouisxml@xxxxxxxxxxxxx > > Sent: Thursday, February 05, 2009 1:46 PM
 >   >   Subject: [liblouis-liblouisxml] Re: Question aout liblouisxml structure
> > > > > > michel, > > > > This is a good start. It will work for now in getting the Windows > > version mp and running, but as you probably realize it can't replace the > > paths.c in the distribution. I do see a problem at line 152. You have to > > add paths for both \usr\share|liblouisxml\lbx_files and > > \usr\share\liblouis\tables . I'm really happy that we are so close. > > > > John > > > > On Wed, Feb 04, 2009 at 06:33:28PM +0100, Michel such wrote:
 >   >   > Hi John,
> > > > > > Here is a modified paths.c > > > > > > The _win32 code has been changed so that it returns the current path of the module instead of "c:\Program Files". > > > > > > So, if you run for example xlm2brl.exe from directory d:\louis\bin,
 >   >   > it will return
 >   >   > d:\louis\bin\
> > > > > > then you can concatenate the appropriate subdir. > > > > > > the conde has been borrowed from BRLTTY (essentially from file sys_prog_windows.h)
 >   >   > and adapted by me to fit my needs.
> > > > > > As I am not a great c expert, it probably might be improved. > > > > > > So here it is attached. > > > ----- Original Message ----- > > > From: John J. Boyer > > > To: liblouis-liblouisxml@xxxxxxxxxxxxx > > > Sent: Monday, February 02, 2009 9:00 PM
 >   >   >   Subject: [liblouis-liblouisxml] Re: Question aout liblouisxml 
structure
> > > > > > > > > Michel, > > > > > > When liblouis and liblouisxml are built under Linux you can specify the > > > directory in which they will be placed with the --prefix option in > > > configure. I think > > > that it would be good if we didn't try to put them in "program Files". > > > Neither Cygwin nor Mingw installs under that directory. Suppose, > > > however, we install them in c:\louss using configure --prefix=c:\louis . > > > Then xml2brl.exe, lou_allround.exe, etc. will be in c:\louis\bin . The > > > DLLs will be in c|\louis\lib and the liblouis tables will be in > > > c:\louis\usr\share\liblouis\tables . The liblouisxml semantic-action > > > files and configuration files will be in > > > c:\louis\usr\share\liblouisxml\lbx_files. The programs will thus be able > > > to find what they need and we can make the Windows binary by zipping the > > > c:\louis directory recursively. > > > > > > At least that is how I hope it would work. I'll have to try to duplicate
 >   >   >   your setup with Mingw and Msys. I have the zip file you put up a 
couple
 >   >   >   of weeks ago, but I think you have added some other packages. 
Could you
 >   >   >   provide a new file with these other packages? I'll have tr 
discover how
 >   >   >   the compiler can know that it is in Mingw as well as Windows. Then 
I can
 >   >   >   modify paths.c accordingly.
> > > > > > You are making a real contribution. I think we are close to having those
 >   >   >   Windows binaries.
> > > > > > Thanks,
 >   >   >   John
> > > > > > On Mon, Feb 02, 2009 at 07:15:36PM +0100, Michel such wrote:
 >   >   >   > John,
> > > > > > > > It appears that, when compiling with mingw, it is recognized as being in _win32 environment.
 >   >   >   > So it compiles the lines corresponding to this in paths.c.
 >   >   >   > It assumes that the directory containing the conversion tables and the 
.cfg files should be somewhere under "c:\Program Files".
 >   >   >   > It would be better, in my opinion, if it would be "Program " 
independant.
 >   >   >   > The better would be to retrieve the directory where the program 
runs from.
 >   >   >   > for example if I run the program from:
 >   >   >   > c:\liblouisxml\bin\xml2brl.exe
 >   >   >   > it should return
 >   >   >   > c:\liblouisxml\bin as currentPath.
 >   >   >   > Then, in yourSubDir, we could put something like
 >   >   >   > ".\\etc\\tables"
 >   >   >   > So, if you install liblouisxml in
 >   >   >   > c:\Program Files\liblouisxml
 >   >   >   > the path you would retrieve in the end would be:
 >   >   >   > c:\Program Files\liblouisxml\bin..\etc\tables
 >   >   >   > wich is like
 >   >   >   > c:\Program Files\liblouisxml\etc\tables
> > > > > > > > ----- Original Message ----- > > > > From: John J. Boyer > > > > To: liblouis-liblouisxml@xxxxxxxxxxxxx > > > > Sent: Saturday, January 31, 2009 4:27 PM
 >   >   >   >   Subject: [liblouis-liblouisxml] Re: Question aout liblouisxml 
structure
> > > > > > > > > > > > Michel, > > > > > > > > i assume you are using Mingw and Msys. The mysubdir line was intended > > > > for building liblouisxml with a Microsoft compiler such as VC6. On line > > > > 38 of paths.c there is the statement: > > > > #ifdef _WIN32 > > > > Which checks whether you are compiling under Windows. It should also be > > > > possible to check whether you are using Mingw. I'm not sure just what > > > > this variable is called. But if you are compiling under Mingw you want > > > > to skip all the code up to line 118, where there is a comment about Unix > > > > paths. This can be done by modifying the #ifdef statement at line 38. > > > > Let's hope someone more familiar with Mingw knows how to do this. > > > > > > > > Once this is done, we will have to decide on a suitable value for the > > > > --prefix option in configure for both liblouis and liblouisxml. > > > > > > > > John > > > > > > > > > > > > On Sat, Jan 31, 2009 at 02:55:54PM +0100, Michel such wrote:
 >   >   >   >   > Hi all,
> > > > > > > > > > After 2 weeks of hard fight, I finally succeeded building liblouisxml under Windows. > > > > > > > > > > Now a question: > > > > > > > > > > I have changed the file paths.c (line 114).
 >   >   >   >   > I replaced yoursubdir by a directory name of mine (I called it 
"tables").
 >   >   >   >   > As I understand, this directory should contain conversion 
tables and maybe cfg files.
> > > > > > > > > > Where should this directory be located in the liblouisxml directory structure?
 >   >   >   >   > I currently have a standard structire (bin, etc, include...)
> > > > -- > > > > My websites:
 >   >   >   >   http://www.godtouches.org
 >   >   >   >   http://www.jjb-software.com
 >   >   >   >   Location: Madison, WI, USA
> > > > > > > > For a description of the software and to download it go to
 >   >   >   >   http://www.jjb-software.com
> > > > > > -- > > > My websites:
 >   >   >   http://www.godtouches.org
 >   >   >   http://www.jjb-software.com
 >   >   >   Location: Madison, WI, USA
> > > > > > For a description of the software and to download it go to
 >   >   >   http://www.jjb-software.com
> > > > > > > > -- > > My websites:
 >   >   http://www.godtouches.org
 >   >   http://www.jjb-software.com
 >   >   Location: Madison, WI, USA
> > > > For a description of the software and to download it go to
 >   >   http://www.jjb-software.com
> > > > -- > John J. Boyer, Executive Director
 >   GodTouches Digital Ministry, Inc.
 >   http://www.godtouches.org
 >   Madison, Wisconsin, USA
 >   Peace, Love, Service
> > For a description of the software and to download it go to
 >   http://www.jjb-software.com

-- My websites:
 http://www.godtouches.org
 http://www.jjb-software.com
 Location: Madison, WI, USA

 For a description of the software and to download it go to
 http://www.jjb-software.com


For a description of the software and to download it go to
http://www.jjb-software.com

Other related posts: