wine_main_preload_info not found, cannot use first megabyte,
*.exe don't work
Mike McCormack
mike at codeweavers.com
Mon Jul 31 09:41:46 CDT 2006
Pavel Roskin wrote:
> find_symbol() looks for DT_HASH (4) to set symtabend and fails to find
> it. As I understand it, we should trick ld into creating the DT_HASH
> tag or use some other way to locate wine_main_preload_info.
>
> The 6ffffef5 tag is DT_GNU_HASH - that may be a good alternative to
> DT_HASH. Adding -Wl,--hash-style=sysv to the gcc flags when linking
> wine-pthread solves the problem!!!
>
> I think adding support for DT_GNU_HASH would be a good idea anyway.
Great work! There's some information on DT_GNU_HASH here:
http://sourceware.org/ml/binutils/2006-06/msg00418.html
Looks like we don't actually use the hash table to look up the symbol,
just to find the last entry in the symbol table.
I agree with you the best way to solve the problem would be to handle
DT_GNU_HASH.
Mike
More information about the wine-devel
mailing list