When attempting to use edb (dev-db/edb) on an amd64 system, I consistently get the following error message: ERROR! cannot open ./test.db I *can* emerge edb (crappy ebuild, if you ask me), though edb consistently fails it's own edb_test code. Obviously, anything dependent upon edb will also fail....which means ecore, edje, entice, etc. I will look into this, when I have the time, but would appreciate any hints/help in the meantime. Reproducible: Always Steps to Reproduce: 1. 2. 3. Expected Results: 1. The ebuild for edb *should* be running the "test" to see if it actually functions. 2. edb should function on amd64.
I did some investigation tonight, and it appears that an error is returned in src/os_fid.c On amd64, time_t and st_ino are 8 bytes, but were 4 on x86, which causes the total size to overflow DB_FILE_ID_LEN. Bumping DB_FILE_ID_LEN up a bit lets edb_test pass.
Created attachment 31636 [details, diff] edb_amd64.patch This patch adjusts the DB_FILE_ID_LEN constant, allowing edb to work on amd64.
Created attachment 31637 [details] edb-1.0.5.20040515.ebuild Modified ebuild to include the patch
ecore builds with the above patch. I haven't been able to build entrance since I can't download the files.
they added this change to cvs: #define DB_FILE_ID_LEN (16 + sizeof(long)) /* DB file ID length. */ it'll be in the coming week's snapshot, thanks :)