Hi! navaraf@cvs.reactos.com wrote:
CVSROOT: /CVS/ReactOS Module name: reactos Repository: reactos/w32api/include/ Changes by: navaraf@mok.osexperts.com 04/12/01 12:06:18
Modified files: reactos/include/wine/: objidl.h reactos/lib/oleaut32/: Makefile.in oaidl_p.c olefont.c tmarshal.c typelib.c typelib.h typelib2.c reactos/lib/uuid/: uuid.c reactos/w32api/include/: oaidl.h objidl.h ocidl.h oleauto.h rpc.h rpcndr.h rpcproxy.h
Log message:
- Get full OLEAUT32 to compile.
I dont understand what happen but when the oleaut32.a is first generated it is 297702 bytes in dk/w32/lib. After oleaut32.dll it built, oleaut32.a is 492292 bytes. With the larger file in dk/w32/lib, it causes build errors with explorer. When making msi.dll with the smaller or first file, I get undefined reference to `LoadTypeLib', with the larger;
../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x803):oleaut.c: multiple definition of `DllMain@12' msi.o(.text+0x3ad3):msi.c: first defined here make: *** [msi.nostrip.dll] Error 1
Explorer;
../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x2004):variant.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x201a):variant.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x2d05):variant.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x2d21):variant.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x2da5):variant.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(variant.o)(.text+0x2dc1):variant.c: more undefined references to `DbgPrint' follow ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x314):oleaut.c: undefined reference to `StringFromGUID2@12' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x333):oleaut.c: undefined reference to `CreateItemMoniker@12' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x367):oleaut.c: undefined reference to `GetRunningObjectTable@8' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x42a):oleaut.c: undefined reference to `GetRunningObjectTable@8' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x4a1):oleaut.c: undefined reference to `StringFromGUID2@12' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x4c0):oleaut.c: undefined reference to `CreateItemMoniker@12' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x4f4):oleaut.c: undefined reference to `GetRunningObjectTable@8' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x6a0):oleaut.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x6b0):oleaut.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(oleaut.o)(.text+0x784):oleaut.c: undefined reference to `GetPaletteEntries@16' ../../../dk/w32/lib/oleaut32.a(safearray.o)(.text+0x57f):safearray.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(safearray.o)(.text+0x595):safearray.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(safearray.o)(.text+0xf42):safearray.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(safearray.o)(.text+0xf52):safearray.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(vartype.o)(.text+0x453c):vartype.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(vartype.o)(.text+0x4552):vartype.c: more undefined references to `DbgPrint' follow ../../../dk/w32/lib/oleaut32.a(vartype.o)(.text+0x602f):vartype.c: undefined reference to `strtoulW' ../../../dk/w32/lib/oleaut32.a(vartype.o)(.text+0x803e):vartype.c: undefined reference to `DbgPrint' ../../../dk/w32/lib/oleaut32.a(vartype.o)(.text+0x8058):vartype.c: undefined reference to `DbgPrint' make: *** [explorer.nostrip.exe] Error 1
So, with the smaller, there are no refs to the typelib code.
FYI, James
James Tabor wrote:
I dont understand what happen but when the oleaut32.a is first generated it is 297702 bytes in dk/w32/lib.
This is the import library...
After oleaut32.dll it built, oleaut32.a is 492292 bytes.
...and this is the actual code in the library that is built into the DLL.
With the larger file in dk/w32/lib, it causes build errors with explorer.
Obviously, you can't just replace the import library by a library containing code.
When making msi.dll with the smaller or first file, I get undefined reference to `LoadTypeLib', with the larger;
The .spec file wasn't updated and so the import library didn't contain references to the typelib functions. This should be fixed now.
Regards, Filip
Hi! Filip Navara wrote:
James Tabor wrote:
I dont understand what happen but when the oleaut32.a is first generated it is 297702 bytes in dk/w32/lib.
This is the import library...
Wow! Oh, thats what it's for!
You Think!???
Funny Filip, Ha Ha, 8^D James