
We currently do not support the usage of DietLore dbs with Lore or viceversa. The main reason is that the data stored in the log file has currently not the same format. While this could easily be fixed for a given platform, it is not 100% clear that this is the only possible problem.
This version number can be set in the Makefile for a new release. Currently if a difference in the version number of the executable with the Lore db is detected, a warning is displayed. This information can be used for automatic version migration of the database. Note that this is also the reason, why some files (lore.cc, Database.cc etc) are dependent on the Makefile and are compiled everytime the Makefile changes.
Guarantees that only a lore executable compiled on the same machine as the executable which generated the database can access the database. This ensure that we don't get into problems with different word sizes, different structure of system specific data structures (in the shared memory), little endian vs big endian etc. If we truly understand the implications of using a db generated on Solaris with Linux code, we can relax the current strict handling.
If you would like to reuse an existing db, add the entries by hand (the values
are the same as the header of lore when executed with -v).
Known Problems with DietLore
There are still some problems which I did not feel responsible for and did
not have the time to investigate. They are:
cout << statement. If I compile the same
code on Trout (Linux 2.x) this problem disappears.
help; or an assignment and then
issuing any other
statement results in a syntax error for that statement.
Reexecuting the statement again works.
Since the problems seems to be a yacc/lex problem on OSF and Vin and Roy don't need the OSF version anymore, I did not investigate much further (It somehow finds a syntax error in parse.cc on line 1355 (OSF version) 1496 (Solaris version)). Generating parse.cc on Solaris and then compiling on OSF did not help.