How symbols are resolved?

Alexandre Julliard julliard at winehq.org
Mon May 19 14:42:17 CDT 2003


"Pierre d'Herbemont" <stegefin at free.fr> writes:

> I would like to have some precision on how symbols are resolved,
> because I am having troubles like :
> 000b:trace:module:find_ordinal_export   ordinal 24410 out of
> range(10/1049)!
> err:module:import_dll No implementation for kernel32.dll.24420
> imported from C:\windows\system\notepad.exe, setting to 0xdeadbeef
> My specific is how does the link is done from a symbol to the ordinal?
> Is it handled by winebuild?

Yes, winebuild gets the list of undefined symbols by running nm -u on
the object file, and then searches for these symbols in the .def files
for the imported dlls. It then generates import entries for every
symbol found, and all that goes into the 'imports' structure in the
.spec.c file of the application. All the relevant code is in
tools/winebuild/import.c.

-- 
Alexandre Julliard
julliard at winehq.com



More information about the wine-devel mailing list