Apache OpenOffice (AOO) Bugzilla – Issue 14490
Build problem with .NET compiler is extensions/source/ole
Last modified: 2013-02-24 21:08:02 UTC
With new ATL header files from VS .NET the extensions/source/ole object can not be built successfully. This bug is related to i14321 and i14324. Please see output provided by Volker Quetschke: "I checked out cws_srx644_obo02 for extensions, and hat to add: ATL_INCLUDE=$(COMPATH)$/atlmfc$/include to wnt.mk and now the build stops in extensions with: ------------------------------ Making: ../../wntmsci8.pro/bin/oleautobridge.uno.dll guw.pl /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe -c -Fo../../wntmsci8.pro/slo/oleautobridge.uno_version.obj -DWNT -I../../wntmsci8.pro/inc /v1/cws_srx644_ooo11beta2cyg/solenv/src/version.c Command: /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe Microsoft (R) 32-Bit C/C++-Standardcompiler Version 13.00.9466 fĂr 80x86 Copyright (C) Microsoft Corporation 1984-2001. Alle Rechte vorbehalten. version.c guw.pl rc -DWIN32 -I -I. -I../../wntmsci8.pro/inc -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc/external/atl -I../inc -I../../inc -I../../WIN/inc -I../../wntmsci8.pro/inc -I. -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc/stl -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc/external -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc -I/v1/cws_srx644_ooo11beta2cyg/solenv/wntmsci8/inc -I/v1/cws_srx644_ooo11beta2cyg/solenv/inc -I/v1/cws_srx644_ooo11beta2cyg/res -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc/stl -I/cygdrive/c/j2sdk1.4.1_02/include/win32 -I/cygdrive/c/j2sdk1.4.1_02/include -I'/cygdrive/C/Programme/Microsoft SDK/include' -I/cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/include -I. -I../../res -I. ../../wntmsci8.pro/misc/oleautobridge.uno_def.rc Command: rc cat ../../wntmsci8.pro/misc/oleautobridge.uno_def.res > ../../wntmsci8.pro/misc/oleautobridge.uno.res guw.pl link /MACHINE:IX86 @/tmp/mk610cb158.18 Command: link Microsoft (R) Incremental Linker Version 7.00.9466 Copyright (C) Microsoft Corporation. All rights reserved. /MAP /NODEFAULTLIB /OPT:NOREF /RELEASE /DEBUG:notmapped,full /SUBSYSTEM:CONSOLE /DLL -out:../../wntmsci8.pro/bin/oleautobridge.uno.dll -map:../../wntmsci8.pro/misc/oleautobridge.uno.map -def:../../wntmsci8.pro/misc/oleautobridge.uno.def -implib:../../wntmsci8.pro/lib/ioleautobridge.uno1.lib ..\..\wntmsci8.pro\slo\oleautobridge.uno_version.obj ..\..\wntmsci8.pro\slo\oleautobridge.uno_description.obj ..\..\wntmsci8.pro\slo\servreg.obj ..\..\wntmsci8.pro\slo\servprov.obj ..\..\wntmsci8.pro\slo\unoobjw.obj ..\..\wntmsci8.pro\slo\oleobjw.obj ..\..\wntmsci8.pro\slo\olethread.obj ..\..\wntmsci8.pro\slo\oledll.obj ..\..\wntmsci8.pro\slo\jscriptclasses.obj ..\..\wntmsci8.pro\slo\ole2uno.obj isal.lib ivos.lib icppu.lib icppuhelper.lib msvcirt.lib ole32.lib uuid.lib oleaut32.lib msvcrt.lib uwinapi.lib kernel32.lib user32.lib oldnames.lib stlport_vc7.lib ..\..\wntmsci8.pro\misc\oleautobridge.uno.res LINK : warning LNK4224: /DEBUG:NOTMAPPED wird nicht mehr unterstuetzt; ignoriert ../../wntmsci8.pro/misc/oleautobridge.uno.def(2) : warning LNK4017: DESCRIPTION-Anweisung wird von der Zielplattform nicht unterstuetzt; ignoriert ../../wntmsci8.pro/misc/oleautobridge.uno.def(3) : warning LNK4017: DATA-Anweisung wird von der Zielplattform nicht unterstuetzt; ignoriert ../../wntmsci8.pro/misc/oleautobridge.uno.def : warning LNK4197: Export 'component_getDescriptionFunc' wurde mehrmals festgelegt; erste Angabe wird verwendet Bibliothek ../../wntmsci8.pro/lib/ioleautobridge.uno1.lib und Objekt ../../wntmsci8.pro/lib/ioleautobridge.uno1.exp wird erstellt ioleautobridge.uno1.exp : warning LNK4070: Die Direktive /OUT:oleautobridge.uno in .EXP weicht vom Ausgabedateinamen '../../wntmsci8.pro/bin/oleautobridge.uno.dll' ab; Direktive wird ignoriert oledll.obj : error LNK2001: Nichtaufgeloestes externes Symbol "class ATL::CAtlBaseModule ATL::_AtlBaseModule" (?_AtlBaseModule@ATL@@3VCAtlBaseModule@1@A) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegDeleteKeyA@8, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::DeleteSubKey(char const *)" (?DeleteSubKey@CRegKey@ATL@@QAEJPBD@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegDeleteValueA@8, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::DeleteValue(char const *)" (?DeleteValue@CRegKey@ATL@@QAEJPBD@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegCloseKey@4, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::Close(void)" (?Close@CRegKey@ATL@@QAEJXZ) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegCreateKeyExA@36, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::Create(struct HKEY__ *,char const *,char *,unsigned long,unsigned long,struct _SECURITY_ATTRIBUTES *,unsigned long *)" (?Create@CRegKey@ATL@@QAEJPAUHKEY__@@PBDPADKKPAU_SECURITY_ATTRIBUTES@@PAK@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegOpenKeyExA@20, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::Open(struct HKEY__ *,char const *,unsigned long)" (?Open@CRegKey@ATL@@QAEJPAUHKEY__@@PBDK@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegEnumKeyExA@32, verwiesen in Funktion "public: long __thiscall ATL::CRegKey::RecurseDeleteKey(char const *)" (?RecurseDeleteKey@CRegKey@ATL@@QAEJPBD@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegSetValueExA@24, verwiesen in Funktion "protected: long __thiscall ATL::CRegParser::AddValue(class ATL::CRegKey &,char const *,char *)" (?AddValue@CRegParser@ATL@@IAEJAAVCRegKey@2@PBDPAD@Z) oledll.obj : error LNK2019: Nicht aufgeloestes externes Symbol __imp__RegQueryInfoKeyA@48, verwiesen in Funktion "protected: int __thiscall ATL::CRegParser::HasSubKeys(struct HKEY__ *)" (?HasSubKeys@CRegParser@ATL@@IAEHPAUHKEY__@@@Z) oledll.obj : error LNK2001: Nichtaufgeloestes externes Symbol "class ATL::CAtlComModule ATL::_AtlComModule" (?_AtlComModule@ATL@@3VCAtlComModule@1@A) ../../wntmsci8.pro/bin/oleautobridge.uno.dll : fatal error LNK1120: 10 unaufgeloeste externe Verweise dmake: Error code 96, while making '../../wntmsci8.pro/bin/oleautobridge.uno.dll' echo: No match. ERROR: Error 65280 occurred while making /v1/cws_srx644_ooo11beta2cyg/extensions/source/ole "
Set target to RC, and I can confirm the bug. Im sorry for the near target, but VC 6 is deprecated for OOo 2.0, and there should be a bit overlap during the transition to .NET.
The olebridge now links with advapi.lib and atls.lib JL->MAV: Please review.
MAV: The fix is reviewed.
Thanks, I just tried, cws_srx644_obo02 now build with .NET in OOo environment.
Errm, I meant to say: Module extensions from cws_srx644_obo02 now build with .NET in OOo environment.
verified
JL->MAV: I guess this bug can be closed if vq and obo don't mind.
.