|
|
|
||||||
|
Patch #8 for Ice 3.3.0: IcePatch2 and non-ascii file names
The following patch resolves issues with IcePatch2 when it is used with files with non-ascii names, such as chinese characters.
To apply the patch: Code:
cd Ice-3.3.0 patch -p1 < IcePatch2.patch.txt Last edited by dwayne : 12-08-2008 at 04:22 PM. |
|
|||||
|
- Compiler :visual studio 2003 sp1
- Operating system :windows xp sp2 - Build flags (debug/release) :debug ( release also error) - The error message you are getting. :see following ps. I manually compiled the third-parties and ice 3.3.0 through visual studio 2003 sp1 successfully. Do you need it? D:\Ice-3.3.0-VC71\Ice-3.3.0>patch --binary -p1 < IcePatch2.patch.txt patching file cpp/include/IceUtil/StringUtil.h patching file cpp/src/IcePatch2/Calc.cpp patching file cpp/src/IcePatch2/Client.cpp patching file cpp/src/IcePatch2/Util.cpp patching file cpp/src/IceUtil/StringUtil.cpp D:\Ice-3.3.0-VC71\Ice-3.3.0>cd cpp D:\Ice-3.3.0-VC71\Ice-3.3.0>nmake /f Makefile.mak OPTIMIZE=no install ... "making install in IcePatch2" del /q ..\..\include\IcePatch2\FileInfo.h FileInfo.cpp ..\..\bin\slice2cpp.exe --ice --include-dir IcePatch2 --dll-export ICE_P ATCH2_API -I..\..\..\slice ..\..\..\slice\IcePatch2\FileInfo.ice move FileInfo.h ..\..\include\IcePatch2 del /q ..\..\include\IcePatch2\FileServer.h FileServer.cpp ..\..\bin\slice2cpp.exe --ice --include-dir IcePatch2 --dll-export ICE_P ATCH2_API -I..\..\..\slice ..\..\..\slice\IcePatch2\FileServer.ice move FileServer.h ..\..\include\IcePatch2 cl.exe /c -I. -I.. -I"C:\Ice-3.3.0-ThirdParty-VC71\include" -nologo -W3 -WX -GR -EHsc -FD -D_CONSOLE -Zi -Gm -Od -D_DEBUG -MDd -GZ -I..\..\include -DWIN 32_LEAN_AND_MEAN Util.cpp ClientUtil.cpp FileInfo.cpp FileServer.cpp Util.cpp FileInfo.cpp FileServer.cpp code generating... compiling... ClientUtil.cpp code generating...... link.exe /LIBPATH:"C:\Ice-3.3.0-ThirdParty-VC71\lib" /LIBPATH:"..\..\lib " /nologo /FIXED:no /debug /incremental:yes /dll /pdb:..\..\bin\icepatch233d.p db Util.obj ClientUtil.obj FileInfo.obj FileServer.obj OS.obj /out:..\..\bin \icepatch233d.dll iced.lib iceutild.lib rpcrt4.lib advapi32.lib libbz2d.lib ssl eay32.lib libeay32.lib IcePatch2.res creating lib ..\..\bin\icepatch233d.lib and object ..\..\bin\icepatch233d.exp move ..\..\bin\icepatch233d.lib ..\..\lib\icepatch2d.lib cl.exe /c -I. -I.. -I"C:\Ice-3.3.0-ThirdParty-VC71\include" -nologo -W3 -WX -GR -EHsc -FD -D_CONSOLE -Zi -Gm -Od -D_DEBUG -MDd -GZ -I..\..\include -DWIN 32_LEAN_AND_MEAN Server.cpp FileServerI.cpp Server.cpp code generating... skipping...(no modify detected) FileServerI.cpp link.exe /LIBPATH:"C:\Ice-3.3.0-ThirdParty-VC71\lib" /LIBPATH:"..\..\lib " /nologo /FIXED:no /debug /incremental:yes /pdb:..\..\bin\icepatch2server.pdb setargv.obj Server.obj FileServerI.obj /out:..\..\bin\icepatch2server.exe iced .lib iceutild.lib rpcrt4.lib advapi32.lib icepatch2d.lib IcePatch2Server.res cl.exe /c -I. -I.. -I"C:\Ice-3.3.0-ThirdParty-VC71\include" -nologo -W3 -WX -GR -EHsc -FD -D_CONSOLE -Zi -Gm -Od -D_DEBUG -MDd -GZ -I..\..\include -DWIN 32_LEAN_AND_MEAN Client.cpp Client.cpp link.exe /LIBPATH:"C:\Ice-3.3.0-ThirdParty-VC71\lib" /LIBPATH:"..\..\lib " /nologo /FIXED:no /debug /incremental:yes /pdb:..\..\bin\icepatch2client.pdb setargv.obj Client.obj /out:..\..\bin\icepatch2client.exe iced.lib iceutild.lib rpcrt4.lib advapi32.lib icepatch2d.lib IcePatch2Client.res Client.obj : error LNK2019: undefined external symbol "__declspec(dllimport) class std: :basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __ cdecl IceUtilInternal::toLower(class std::basic_string<char,struct std::char_tra its<char>,class std::allocator<char> > const &)" (__imp_?toLower@IceUtilInternal @@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$al locator@D@2@@std@@ABV23@@Z) , this symbol in function "public: virtual bool __thiscall TextPatcherFeedback::noFileSummary (class std::basic_string<char,struct std::char_traits<char>,class std::allocator <char> > const &)" (?noFileSummary@TextPatcherFeedback@@UAE_NABV?$bas ic_string@D U?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) 中被引用 ..\..\bin\icepatch2client.exe : fatal error LNK1120: 1 Unresolved Externals NMAKE : fatal error U1077: “link.exe” : 返回代码“0x460” Stop. NMAKE : fatal error U1077: “for” : 返回代码“0x1” Stop. NMAKE : fatal error U1077: “for” : 返回代码“0x1” Stop. Last edited by cxq2003 : 12-05-2008 at 01:02 AM. |
|
|||||
|
The error is pretty clear to me. nmake did not remade iceutil.dll and therefore new symbols are not available.
The easy fix: delete lib\iceutild.lib and bin\iceutild.dll and recompile.
__________________
Francisco Moya Fernandez Computer Architecture and Tecnology Group University of Castilla-La Mancha Debian Maintainer of ZeroC Ice packages. |
|
|||||
|
Quote:
I tried it and it does not work! I even run "nmake /f Makefile.mak clean" before "nmake /f Makefile.mak OPTIMIZE=no install", errors keep the same as above! |
|
|||||
|
Quote:
In StringUtil.cpp, you must not put the toLower,toUpper,removeWhitespace functions body in #else segment that make the compilation error under windows xp . see attachment |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Data/Code file distribution/patch possibility with Ice | spsoni | Help Center | 1 | 08-21-2008 03:58 AM |
| What does IcePatch2-Client if the connection to IcePatch2-Server breaks? | Ewgenijkkg | Help Center | 1 | 07-11-2007 07:44 PM |
| Patch #1 for Ice for C# 3.1.1: Missing policy.3.1.icesslcs file. | beagles | Patches | 0 | 11-28-2006 08:35 AM |
| IceGrid problem with file names with space character | kovacm | Bug Reports | 2 | 12-12-2005 09:10 AM |
| IcePach2 problem with czech file names | kovacm | Bug Reports | 1 | 11-28-2005 01:00 PM |