Apache OpenOffice (AOO) Bugzilla – Issue 14324
.NET build fails in extensions/source/activex/main
Last modified: 2010-10-23 07:16:06 UTC
The build fails in extensions/source/activex/main, this is related to iz 14321. First there are some additional include files missing, namely: +cp ${COMPATH}/atlmfc/include/atlrc.h rtufiles/atlrc.h +cp ${COMPATH}/atlmfc/include/atlcore.h rtufiles/atlcore.h +cp ${COMPATH}/atlmfc/include/atlexcept.h rtufiles/atlexcept.h +cp ${COMPATH}/atlmfc/include/atltrace.h rtufiles/atltrace.h +cp ${COMPATH}/atlmfc/include/atlsimpcoll.h rtufiles/atlsimpcoll.h +cp ${COMPATH}/atlmfc/include/atlcomcli.h rtufiles/atlcomcli.h +cp ${COMPATH}/atlmfc/include/atlbase.inl rtufiles/atlbase.inl +cp ${COMPATH}/atlmfc/include/atlsimpstr.h rtufiles/atlsimpstr.h +cp ${COMPATH}/atlmfc/include/atlmem.h rtufiles/atlmem.h +cp ${COMPATH}/atlmfc/include/atlcommem.h rtufiles/atlcommem.h If I add these lines to atlcopy the build finaly fails with: ------------------------------ Making: ../../../wntmsci8.pro/slo/SOComWindowPeer.obj guw.pl /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe -Zm500 -wd4290 -wd4786 -wd4800 -wd4029 -c -nologo -Gs -Gy -I. -I/v1/cws_srx644_ooo11beta2cyg/solver/644/wntmsci8.pro/inc/external/atl -I../../../wntmsci8.pro/misc -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. -Zi -Fd../../../wntmsci8.pro/misc\_ooo_st_so_activex.PDB -Ob1 -Ox -Gd -DWNT -DWNT -DNT351 -DMSC -DMI200 -DINTEL -D_USE_NAMESPACE -D_X86_=1 -DFULL_DESK -DSTLPORT_VERSION=400 -DWINVER=0x400 -D_WIN32_IE=0x400 -D_MT -DCPPU_ENV=msci -DSUPD=644 -DBUILD=8600 -DPRODUCT -DNDEBUG -DPRODUCT_FULL -DOSL_DEBUG_LEVEL=0 -DOPTIMIZE -DEXCEPTIONS_OFF -DCUI -DSOLAR_JAVA -DSRX644 -DSHAREDLIB -D_DLL_ -DWIN32 -D_MT -D_DLL -DWIN32 -D_MT -D_DLL -DMULTITHREAD -W3 -Fo../../../wntmsci8.pro/slo/SOComWindowPeer.obj /v1/cws_srx644_ooo11beta2cyg/extensions/source/activex/main/SOComWindowPeer.cpp guw.pl /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe @/tmp/mk610cb37c.8 Command: /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe cl : Befehlszeile warning D4029 : Die Optimierung ist im Standardcompiler nicht verfgbar. SOComWindowPeer.cpp d:\v1\cws_srx644_ooo11beta2cyg\extensions\source\activex\main\SOComWindowPeer.cpp(19) : error C2039: 'InlineIsEqualGUID' : Ist kein Element von 'ATL' dmake: Error code 2, while making '../../../wntmsci8.pro/slo/SOComWindowPeer.obj' echo: No match. ERROR: Error 65280 occurred while making /v1/cws_srx644_ooo11beta2cyg/extensions/source/activex/main dmake: Error code 1, while making 'build_all' echo: No match. -------------------------------------------------- What's different in haburg build environment?
set target
With new ATL header files from VS .NET InlineIsEqualGUID is no longer defined in altbase.h. Instead it has to be used without namespace ATL and is defined in <guiddef.h> BTW: The directive #include "so_activex.h" refers to a file so_activex.h in the current directory but there's none. If it should be found in include paths please change to #include <so_activex.h>.
.
MAV: The control should be built successfully now.
MAV->MBA: Sending for review.
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 fr 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 A step further, but not finished yet ;-)
MAV->JL: The ActiveX control can be built and works ok. The problem in extensions/source/ole is a different bug. A new issue is created i14490.
Bugfix reviewed.
verified.
Created attachment 72394