In the past I've got around this problem by converting the big-endian
database to text on the big-endian machine then converting the resulting
text file to a little-endian database on the little-endian machine (or
So, if you built the collection on the Mac you'd do something like the
following to convert the gdbm database to text:
db2txt album.bdb > album.txt
Then, after copying the collection to the Intel machine (including
album.txt) you'd do something like:
txt2db < album.txt > album.ldb
You should then have both a .ldb and a .bdb gdbm file and the collection
will work with either byte-ordering.
Gordon Paynter wrote:
> Hi all,
> I've been building collections on my laptop (Debian Linux running on
> Mac hardware) and transferring them to my desktop (Debian Linux
> running on Intel hardware). Unfortunately, the collections don't
> simply copy: I have to rebuild them to get them to work.
> I suspect the problem is that the machine uses different byte orders
> in the gdbm database. The obvious difference is that on the Mac, the
> data is stored in $GSDLHONE/album/index/text/album.ldb, while on the
> desktop it is in $GSDLHONE/album/index/text/album.bdb, and I seem to
> recall someone telling me that the extension of this file had to do
> with byte order.
> That being the case, is there a way to build a collection using
> non-native byte order, or to get Greenstone to use such a collection?
> And if it is possible, what are the costs of doing it?