Issue 23535 - W32 build breaks in lingucomponent/source/thesaurus/libnth
Summary: W32 build breaks in lingucomponent/source/thesaurus/libnth
Status: CLOSED FIXED
Alias: None
Product: Infrastructure
Classification: Infrastructure
Component: Website general issues (show other issues)
Version: current
Hardware: PC Windows 2000
: P1 (highest) Trivial (vote)
Target Milestone: ---
Assignee: issues@lingucomponent
QA Contact: issues@lingucomponent
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-13 23:46 UTC by quetschke
Modified: 2013-02-24 20:34 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Fix for lingucomponent/ (1.19 KB, patch)
2003-12-13 23:47 UTC, quetschke
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2003-12-13 23:46:28 UTC
Branch: cws_src680_ooo20031216

The W32 (.NET2002) build breaks in lingucomponent/source/thesaurus/libnth
saying that mystrdup and mychomp are already defined in libmythes.lib.

Logfile snippet below. The linker is right, the following patch fixes this
for me.


------------------------------
Making: ../../../wntmsci8.pro/bin/lnth680mi.dll
guw.pl /cygdrive/c/PROGRA~1/MICROS~1.NET/Vc7/bin/cl.exe -c
-Fo../../../wntmsci8.pro/slo/lnth_dflt_version.obj -DWNT 
-I../../../wntmsci8.pro/inc
/cygdrive/d/v1/cws_src680_ooo20031216/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. -I../inc -I../../../inc -I../../../WIN/inc
-I../../../wntmsci8.pro/inc -I.
-I/cygdrive/d/v1/cws_src680_ooo20031216/solver/680/wntmsci8.pro/inc/stl
-I/cygdrive/d/v1/cws_src680_ooo20031216/solver/680/wntmsci8.pro/inc/external
-I/cygdrive/d/v1/cws_src680_ooo20031216/solver/680/wntmsci8.pro/inc
-I/cygdrive/d/v1/cws_src680_ooo20031216/solenv/wntmsci8/inc
-I/cygdrive/d/v1/cws_src680_ooo20031216/solenv/inc
-I/cygdrive/d/v1/cws_src680_ooo20031216/res
-I/cygdrive/d/v1/cws_src680_ooo20031216/solver/680/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/lnth680mi_def.rc
Command: rc
cat ../../../wntmsci8.pro/misc/lnth680mi_def.res >
../../../wntmsci8.pro/misc/lnth680mi.res
guw.pl link  /MACHINE:IX86 @/tmp/mk610cb180.d
Command: link
Microsoft (R) Incremental Linker Version 7.00.9466
Copyright (C) Microsoft Corporation.  All rights reserved.

/MAP /OPT:NOREF /NODEFAULTLIB /RELEASE /DEBUG:notmapped,full /SUBSYSTEM:CONSOLE
/DLL -out:../../../wntmsci8.pro/bin/lnth680mi.dll
-map:../../../wntmsci8.pro/misc/lnth680mi.map
-def:../../../wntmsci8.pro/misc/lnth680mi.def
-implib:../../../wntmsci8.pro/lib/ilnth.lib
..\..\..\wntmsci8.pro\slo\lnth_dflt_version.obj
..\..\..\wntmsci8.pro\slo\lnth_dflt_description.obj
..\..\..\wntmsci8.pro\slb\lnth.lib icppu.lib icppuhelper.lib ivos.lib itools.lib
svtool.lib isvl.lib ivcl.lib sfx.lib isal.lib iucbhelper.lib iutl.lib ilng.lib
libmythes.lib ulingu.lib msvcrt.lib uwinapi.lib kernel32.lib user32.lib
oldnames.lib stlport_vc7.lib ..\..\..\wntmsci8.pro\misc\lnth680mi.res 
LINK : warning LNK4224: /DEBUG:NOTMAPPED wird nicht mehr unterstuetzt; ignoriert
../../../wntmsci8.pro/misc/lnth680mi.def(2) : warning LNK4017:
DESCRIPTION-Anweisung wird von der Zielplattform nicht unterstuetzt; ignoriert
../../../wntmsci8.pro/misc/lnth680mi.def(3) : warning LNK4017: DATA-Anweisung
wird von der Zielplattform nicht unterstuetzt; ignoriert
   Bibliothek ../../../wntmsci8.pro/lib/ilnth.lib und Objekt
../../../wntmsci8.pro/lib/ilnth.exp wird erstellt
ulingu.lib(csutil.obj) : error LNK2005: "char * __cdecl mystrdup(char const *)"
(?mystrdup@@YAPADPBD@Z) bereits in libmythes.lib(mythes.obj) definiert
ulingu.lib(csutil.obj) : error LNK2005: "void __cdecl mychomp(char *)"
(?mychomp@@YAXPAD@Z) bereits in libmythes.lib(mythes.obj) definiert
../../../wntmsci8.pro/bin/lnth680mi.dll : fatal error LNK1169: Ein oder mehrere
mehrfach definierte Symbole gefunden
dmake:  Error code 145, while making '../../../wntmsci8.pro/bin/lnth680mi.dll'
Comment 1 quetschke 2003-12-13 23:47:19 UTC
Created attachment 11931 [details]
Fix for lingucomponent/
Comment 2 khendricks 2003-12-14 00:50:15 UTC
Hi Volker, 
 
Those routines are actually required for the standalone version of MyThes and as such I don't 
want to remove them. 
 
The best solution if to ifdef them for the standalone version like so ... 
 
#ifdef MYTHES_STANDALONE 
#endif 
 
I will add that define to the standalone version so that is will still compile and work without 
liblingutil. 
 
I will commit that change now. 
 
Thanks, 
 
Kevin 
 
Comment 3 khendricks 2003-12-14 01:01:53 UTC
Hi, 
 
ifdef MYTHES_STANDALONE added to effectively remove those and replace them with extern 
for the OOo version of the build. 
 
Those routines have to be there for the standalone version of MyThes. 
 
Fix has now been committed to the cws_src680_ooo20031216 tree. 
 
Please give it a try and let me know if you still have any problems. 
 
Resolving this as fixed. 
 
Also, I am interested to find out if dictionaries/en_US builds on Windows as well and if not what 
errors you ran into. 
 
Kevin 
 
Comment 4 Martin Hollmichel 2004-11-03 04:24:40 UTC
close issue.