Successfully built latest MDBtools under Cygwin on Windows 7 (64-bit) and they almost work. mdb-schema, given an MDB file, displays the schema, but then prints "relationships are not supported for access" several times and gets a segmentation fault. Re-ran under GDB, and the output with backtrace is below.
It's also possible to crash mdb-schema just by typing "mdb-schema -v". "v" is an illegal option, and that produces an immediate segfault.
mdb-export seems to be working. On the same database, it doesn't crash, and exports reasonable records.
===
$ gdb mdb-schema
GNU gdb (GDB) 7.3.50.20111026-cvs (cygwin-special)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-cygwin".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>…
Reading symbols from /usr/local/bin/mdb-schema…done.
(gdb) run *.mdb
Starting program: /usr/local/bin/mdb-schema *.mdb
DROP TABLE dbo_comps;
CREATE TABLE dbo_comps
(
id Long Integer (4),
title Memo/Hyperlink,
email Text (400),
url Memo/Hyperlink,
parent Long Integer (4),
Note Memo/Hyperlink,
fax Text (100),
city Text (100),
phone Text (100),
zip Text (100),
addr Text (400),
state Text (100),
town Text (100),
region Text (100),
country Text (100),
apath Text (400),
cpath Text (400),
attn Text (200)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_dirs;
CREATE TABLE dbo_dirs
(
parent Long Integer (4),
id Long Integer (4),
title Text (400)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_links;
CREATE TABLE dbo_links
(
parent Long Integer (4),
id Long Integer (4)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_paths;
CREATE TABLE dbo_paths
(
id Long Integer (4),
path Memo/Hyperlink,
title Text (400),
subs Long Integer (4),
tot Long Integer (4),
sumtot Long Integer (4),
note Memo/Hyperlink,
parent Long Integer (4)
);
- CREATE ANY INDEXES …
DROP TABLE defs;
CREATE TABLE defs
(
tag Text (100),
val Text (500)
);
- CREATE ANY INDEXES …
DROP TABLE collections;
CREATE TABLE collections
(
colname Text (100),
Id Long Integer (4),
isCat Boolean,
caption Text (400)
);
- CREATE ANY INDEXES …
DROP TABLE fielddefs;
CREATE TABLE fielddefs
(
field Text (100),
caption Text (100),
width Long Integer (4),
visible Boolean,
onlist Boolean,
taborder Long Integer (4),
note Text (400),
style Text (100),
canexport Boolean
);
- CREATE ANY INDEXES …
CREATE ANY Relationships …
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) bt
#0 0x00000000 in ?? ()
Backtrace stopped: Not enough registers or memory available to unwind further
(gdb) info threads
Id Target Id Frame
2 Thread 2532.0xd94 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
* 1 Thread 2532.0xf64 0x00000000 in ?? ()
(gdb) thread 2
#0 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
(gdb) bt
#0 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
#1 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
#2 0x774dd348 in ReadFile () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
#3 0x00000098 in ?? ()
#4 0x00000000 in ?? ()
(gdb)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Successfully built latest MDBtools under Cygwin on Windows 7 (64-bit) and they almost work. mdb-schema, given an MDB file, displays the schema, but then prints "relationships are not supported for access" several times and gets a segmentation fault. Re-ran under GDB, and the output with backtrace is below.
It's also possible to crash mdb-schema just by typing "mdb-schema -v". "v" is an illegal option, and that produces an immediate segfault.
mdb-export seems to be working. On the same database, it doesn't crash, and exports reasonable records.
===
$ gdb mdb-schema
GNU gdb (GDB) 7.3.50.20111026-cvs (cygwin-special)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-cygwin".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>…
Reading symbols from /usr/local/bin/mdb-schema…done.
(gdb) run *.mdb
Starting program: /usr/local/bin/mdb-schema *.mdb
DROP TABLE dbo_comps;
CREATE TABLE dbo_comps
(
id Long Integer (4),
title Memo/Hyperlink,
email Text (400),
url Memo/Hyperlink,
parent Long Integer (4),
Note Memo/Hyperlink,
fax Text (100),
city Text (100),
phone Text (100),
zip Text (100),
addr Text (400),
state Text (100),
town Text (100),
region Text (100),
country Text (100),
apath Text (400),
cpath Text (400),
attn Text (200)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_dirs;
CREATE TABLE dbo_dirs
(
parent Long Integer (4),
id Long Integer (4),
title Text (400)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_links;
CREATE TABLE dbo_links
(
parent Long Integer (4),
id Long Integer (4)
);
- CREATE ANY INDEXES …
DROP TABLE dbo_paths;
CREATE TABLE dbo_paths
(
id Long Integer (4),
path Memo/Hyperlink,
title Text (400),
subs Long Integer (4),
tot Long Integer (4),
sumtot Long Integer (4),
note Memo/Hyperlink,
parent Long Integer (4)
);
- CREATE ANY INDEXES …
DROP TABLE defs;
CREATE TABLE defs
(
tag Text (100),
val Text (500)
);
- CREATE ANY INDEXES …
DROP TABLE collections;
CREATE TABLE collections
(
colname Text (100),
Id Long Integer (4),
isCat Boolean,
caption Text (400)
);
- CREATE ANY INDEXES …
DROP TABLE fielddefs;
CREATE TABLE fielddefs
(
field Text (100),
caption Text (100),
width Long Integer (4),
visible Boolean,
onlist Boolean,
taborder Long Integer (4),
note Text (400),
style Text (100),
canexport Boolean
);
- CREATE ANY INDEXES …
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
relationships are not supported for access
Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) bt
#0 0x00000000 in ?? ()
Backtrace stopped: Not enough registers or memory available to unwind further
(gdb) info threads
Id Target Id Frame
2 Thread 2532.0xd94 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
* 1 Thread 2532.0xf64 0x00000000 in ?? ()
(gdb) thread 2
#0 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
(gdb) bt
#0 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
#1 0x7793f8e5 in ntdll!RtlUpdateClonedSRWLock () from /cygdrive/c/Windows/system32/ntdll.dll
#2 0x774dd348 in ReadFile () from /cygdrive/c/Windows/syswow64/KERNELBASE.dll
#3 0x00000098 in ?? ()
#4 0x00000000 in ?? ()
(gdb)