Eitan, Thanks. I'll work on your suggestions and get back to you. John On Mon, Jun 09, 2008 at 02:58:10PM -0700, Eitan Isaacson wrote: > Hey John. > > Glad to see you are peeking at the autotooled stuff. I answered your > questions in-line below. But first, a note about prefixes: > > When running "configure". you could give a --prefix argument that will > install the package somewhere else besides /usr/local. I like to keep > packages I am developing off of my main system, for sanity sake, so > often I define the prefix as /opt, and then, for example, the library > gets installed in /opt/lib. When I install dependent packages, it is > important to set the PKG_CONFIG_PATH environment variable to where the > depended *.pc file is. So for example, this is how I would install > liblouis and liblouisxml: > > cd liblouis > ./configure --prefix=/opt > make; make install > cd ../ > cd liblouisxml > export PKG_CONFIG_PATH=/opt/lib/pkgconfig > ./configure --prefix=/opt > make; make install > > I answered the rest of your questions below.. > > On Mon, 2008-06-09 at 02:01 -0500, John J. Boyer wrote: > > 1. Why can't liblouisxml find liblouis? > > > > I am assuming you ran "make install" for liblouis, right? > Normally pkg-config should look in /usr/local/lib/pkgconfig, if this is > where liblouis.pc is installed. To be sure set PKG_CONFIG_PATH > to /usr/local/lib/pkgconfig (or wherever the liblouis.pc file is). I am > not running a 64 bit distro right now, so I can't experiment, but > perhaps your version of pkgconfig does not look > in /usr/local/lib/pkgconfig by default but > in /usr/local/lib64/pkgconfig. > > > 2. My Linux machine is 64-bit. By default, gcc produces 64-bit code. > > However, both autotooled packages appear to produce 32-bit code, or > > maybe liblouis.pc should be in lib64/pkgconfig. The Windows machine is > > 32-bit. So the autotool scripts should take account of this. > > > > How have you determined it is 32 bit in Linux? because it wasn't > installed in lib64? This is simply a namespace fetish that Linux distros > have to keep a certain degree of sanity and interop with different > binary formats. Try working with a completely alternative prefix, like I > suggested above. The whole lib/lib64 business is confusing enough. > > If you are certain that the binaries being produced are 32 bits, then > yeah, that is a problem that I don't know how to solve off the top of my > head, need to install a 64 bit version myself. > > > 3. The code is being compiled with the flags -g and -O2. The debugging > > inforcation generated by -g is not much use if O2 is specified. I want > > the flags O2 and -Wall. > > You could explicitly set the flags by setting the CFLAGS environment > variable before running configure. For example: > > CFLAGS="-O2 -Wall" ./configure > > > > > 4. However, when I am testing new features or fixing old bugs I want the > > flags -g and -Wall. > > > > See above. > > > 5. also when developing, I want to install the software without getting > > root privileges or disturbing my working versions. How do I do this? > > > > This is why I suggest using an alternative prefix, like above. It could > be a user-writable directory. And stuff that you run off your normal > execution path, etc. won't be affected by this development version. > > > 6. The program make_sem_names needs to be run (and compiled if > > necessary) to generate sem_names.h from sem_enum.h before any of the > > modules in liblouisxml are compiled. How can this be done? > > > > I remember asking you about this a couple of moths back ,and you said > that sem_names.h is rarely going to change, so we don't need to generate > it automatically. I'll be happy to look into that, and see how we could > do it. I never have done it before, but it would be fun to try. > > > 7. How can the autotooled versions help people who are using windows > > compilers such as VC++ 6 or Visual Studio? > > I have no idea. I never used any of the visual products. I'm sure there > is something though. > > > > > Once these problems are ironed out I will replace the versions of the > > software on www.jjb-software.com with the autotooled versions, start a > > project on code.google for liblouisxml and join Eitan in the liblouis > > project. > > > > Both liblouis and liblouisxml have tests subdirectories. At present > > these are merely stubs. They could be fleshed out with shell scripts to > > run various commands with selected data. For example, the liblouis tests > > directory might have a script to run lou_checktable against > > en-us-g2.ctb. lou_allround can be run non-interactively by redirecting > > its input and output. liblouisxml can be tested by scripts which run > > xml2brl and mathml2brl against short files containing text and math. > > > > A big thank you to Eitan for his help on autotools and for the coffee. > > > > John > > > > > > For a description of the software and to download it go to > http://www.jjb-software.com -- John J. boyer; President, Chief Software Developer JJB Software, Inc. http://www.jjb-software.com Madison, WI USA Developing software for people with disabilities For a description of the software and to download it go to http://www.jjb-software.com