Thanks. It will be easy to modify this script for liblouisutdml. I'll also forward a version of this message to the liblouis-liblouisxml list for those who are interested. John On Mon, Dec 20, 2010 at 10:59:29AM +0100, Bert Frees wrote: > Maybe this helps: > > This is a script I use for making liblouis and liblouisxml relocatable > on Mac OS. It's very easy! > > https://odt2braille.svn.sourceforge.net/svnroot/odt2braille/Odt2BrailleAddOn/liblouis/bin/install_name_tool.sh > > When executing xml2brl, I make sure that the first file in my > configuration file list is a path (i.e. my directory that includes all > tables and semantic action files), so that liblouisxml will first scan > this path when looking for tables. (You explain this in the user manual: > http://liblouisxml.googlecode.com/svn/documentation/liblouisxml.html#Files-and-Paths.) > > Bert > > > On 17/12/2010 18:38, John J. Boyer wrote: > >Paths swill be relative to the brailleblaster directory. I just haven't > >figured out how to do this for liblouis and liblouisutdml yet. On > >Windows they are relocatable, so there is no problem. Making them > >relocatable on the Mac and Linux may take a little work. > > > >John > > > >On Fri, Dec 17, 2010 at 03:39:34PM +0000, Michael Whapples wrote: > >>bin/bin/ seems a bit odd to me. How does that read to others? > >> > >>Now taking another step back, you were describing the binary distribution > >>layout, what goes to mercurial will be the source distribution which will > >>certainly differ. I would have thought binary distributions when made > >>from the source will go in a directory called something like build, > >>possibly with subdirectories for whichever binary distribution is built > >>(IE. if building on windows the binary distribution would be placed in > >>build/win32/). > >> > >>Now you mentioned about the prefix for liblouis and such like, this is > >>why I asked about the possibility of setting a relative path for the > >>prefix of liblouis but as your response indicated it wasn't needed, so > >>what do you now see as the problem? I still think it might be but you > >>didn't. My point is that if the binary version of brailleblaster is > >>distributed as a zip file you cannot guarantee/expect people to unzip it > >>in a given location (actually if using the build directory idea, it would > >>be expected people will relocate brailleblaster), therefore the prefix > >>must be relative (possibly relative to the shared library file, eg. > >>liblouis.so or liblouis.dll, etc). If going with the directory structure > >>you suggested, then prefix would be ../. Not being a C programmer may be > >>I have missed something in what C could do, may be the prefix would have > >>to be relative to something else, but hopefully you get the idea now. > >> > >>If relative prefix paths are impossible you must find some way of doing > >>this setting of appropriate paths at runtime, eg. environment variables. > >>The start up scripts/bootstrapping executables could do the setting of > >>environment variables if needed (certainly on windows and Linux, I guess > >>also on the Mac but I don't know how precisely you would do it correctly, > >>if there is an appbundle way of doing it). > >> > >>Michael Whapples > >>On 17 Dec 2010, at 14:48, John J. Boyer wrote: > >> > >>>Here is what I think should be in the base brailleblaster directory. How > >>>will it fit in a Mac app bundle? It should be fine for Windows and > >>>Linux. > >>> > >>>The directory is called brailleblaster it contains: > >>> > >>>LICENSE: a file > >>>COPYRIGHT: a file > >>>README: a file > >>>brailleblaster.jar: The main course > >>>brailleblaster.sh: startup script for Linux and Mac > >>>brailleblaster.bat: startup script for Windows > >>>lib: a directory containing jar files such as swt.jar > >>>bin: a directory containing C and C++ commands and libraries > >>> > >>>The bin directory in turn contains the following subdirectories: > >>> > >>>bin: command line tools such as file2brl > >>>lib: Libraries such as liblouis and liblouisutdml > >>>share: Files and documentation for various libraries > >>> > >>>liblouis and liblouisutdml should be compiled with the --prefix option > >>>of configure set to xxx/brailleblaster/bin where xxx is the path to the > >>>brailleblaster directory. I'm not sure what happens if this path > >>>changes. We will have to work that out. The make and make install > >>>commands will produce other directories within brailleblaster/bin, but > >>>these can be deleted. > >>> > >>>Now that my server is completely back in business, i will try to push my > >>>code to the BrailleBlaster repository. It will contain the source, of > >>>course. The bin and lib directories will be empty except for README > >>>files. > >>> > >>>John > >>> > >>>-- > >>>John J. Boyer; President, Chief Software Developer > >>>Abilitiessoft, Inc. > >>>http://www.abilitiessoft.com > >>>Madison, Wisconsin USA > >>>Developing software for people with disabilities > >>> > >>> > > -- John J. Boyer; President, Chief Software Developer Abilitiessoft, Inc. http://www.abilitiessoft.com Madison, Wisconsin USA Developing software for people with disabilities