I've had a *little* success in getting DT to read from the Linux version of DF v0.31.10, it looks like the dwarves' labours, current job and names are being read correctly, but that's about all I'm sure of. It looks like various offsets within the dwarf definition might have changed, but I don't know enough to fix this, currently. Following is my current best effort, but I've not changed any offsets, only the vector addresses, checksum and version:
[info]
checksum = 0x3e7bea26
version_name = v0.31.10
[addresses]
translation_vector = 0x0932bf2c
language_vector = 0x0932bf14
creature_vector = 0x092ea9d4
dwarf_race_index = 0x092d2548
[offsets]
word_table = 0x001C
[dwarf_offsets]
first_name = 0x0000
nick_name = 0x0004
last_name = 0x0008
custom_profession = 0x003c
profession = 0x0040
race = 0x0044
flags1 = 0x008C
flags2 = 0x0090
sex = 0x00A6
id = 0x00A8
recheck_equipment = 0x0144
current_job = 0x0258
states = 0x0
souls = 0x0500
labors = 0x051C
happiness = 0x05AC
[soul_details]
skills = 0x01C4
traits = 0x01DC
[job_details]
id = 0x0008
on_break_flag = 0x0011
[valid_flags_1]
size = 1
1/name = "Not from around these parts"
1/value = 0x80000000
[invalid_flags_1]
size = 7
1/name = "a zombie"
1/value = 0x00001000
2/name = "a skeleton"
2/value = 0x00002000
3/name = "a merchant or diplomat"
3/value = 0x00000040
4/name = "outpost liason"
4/value = 0x00000800
5/name = "an invader or hostile"
5/value = 0x00020000
6/name = "an invader or hostile"
6/value = 0x00080000
7/name = "an invader or hostile"
7/value = 0x000C0000
[invalid_flags_2]
size=2
1/name = "dead, Jim."
1/value = 0x00000080
2/name = "from the Underworld. SPOOKY!"
2/value = 0x00040000