>> Edit article
이름
제목
패스워드
안녕하세요. 유니코드를 지원하는 라이브러리 GNU의 libiconv를 windows DLL로 만드는 작업을 하고 있는데요.. compile 과정에서 막힙니다. msvc버젼의 makefile이 있습니다만 에라가 다음과 같이 출력됩니다. 다음과 같이 compile을 하였습니다. ======================================================================= D:gnu_LIBICONVlibiconvlibiconv-1.8.tarlibiconv-1.8>nmake -f Makefile.msvc DLL=1 MFLAGS=-MD Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cd libcharset NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. copy includelibcharset.h.msvc-shared includelibcharset.h 1개 파일이 복사되었습니다. cd lib NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cl -MD -LD localcharset.obj Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved. Microsoft (R) Incremental Linker Version 6.00.8168 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. /out:localcharset.dll /dll /implib:localcharset.lib localcharset.obj cd .. cd .. copy libcharsetincludelibcharset.h liblibcharset.h 1개 파일이 복사되었습니다. copy includeiconv.h.msvc-shared includeiconv.h 1개 파일이 복사되었습니다. cd lib NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cl -MD -LD iconv.obj ..libcharsetliblocalcharset.obj Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved. Microsoft (R) Incremental Linker Version 6.00.8168 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. /out:iconv.dll /dll /implib:iconv.lib iconv.obj ..libcharsetliblocalcharset.obj LINK : warning LNK4049: locally defined symbol "_locale_charset" imported cd .. cd src NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. NMAKE : fatal error U1073: don't know how to make '../lib/iconv.lib' Stop. NMAKE : fatal error U1077: '"C:PROGRA~1Microsoft Visual StudioVC98BinNMAKE.EXE"' : return code '0x2'Stop. ================================================================================= /src/makefile.msvc의 내용중에 /src/iconv.lib -> /src/iconv.obj으로 바꾸어서 compile을 한다면 ================================================================================= D:gnu_LIBICONVlibiconvlibiconv-1.8.tarlibiconv-1.8>nmake -f Makefile.msvc DLL=1 MFLAGS=-MD Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cd libcharset NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. copy includelibcharset.h.msvc-shared includelibcharset.h 1개 파일이 복사되었습니다. cd lib NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cl -MD -LD localcharset.obj Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved. Microsoft (R) Incremental Linker Version 6.00.8168 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. /out:localcharset.dll /dll /implib:localcharset.lib localcharset.obj cd .. cd .. copy libcharsetincludelibcharset.h liblibcharset.h 1개 파일이 복사되었습니다. copy includeiconv.h.msvc-shared includeiconv.h 1개 파일이 복사되었습니다. cd lib NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cl -MD -LD iconv.obj ..libcharsetliblocalcharset.obj Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved. Microsoft (R) Incremental Linker Version 6.00.8168 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. /out:iconv.dll /dll /implib:iconv.lib iconv.obj ..libcharsetliblocalcharset.obj LINK : warning LNK4049: locally defined symbol "_locale_charset" imported cd .. cd src NMAKE -f Makefile.msvc all Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cl -I. -I. -I..include -I...include -IC:/MSVC/Include/ -I..lib -MD -W1 -D_NDEBUG -O1 ./iconv.c ../lib/iconv.obj -Feiconv.exe Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86 Copyright (C) Microsoft Corp 1984-1998. All rights reserved. iconv.c Microsoft (R) Incremental Linker Version 6.00.8168 Copyright (C) Microsoft Corp 1992-1998. All rights reserved. /out:iconv.exe iconv.obj ../lib/iconv.obj iconv.obj : error LNK2001: unresolved external symbol __imp__locale_charset iconv.exe : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: 'cl' : return code '0x2' Stop. NMAKE : fatal error U1077: '"C:PROGRA~1Microsoft Visual StudioVC98BinNMAKE.EXE"' : return code '0x2' Stop. ===================================================================================== 이런 내용이 출력됩니다. DLL 생성에 도움을 바랍니다. 참고적으로 저는 win2000을 사용하구요. MSVC은 ver 6.0 입니다. 저희가 사용하는 문자셋이 Euc-kr 맞죠.. 그런데 왜 인식을 못하죠. Unix처럼 configure 파일에 입력시킬 수도 없구 말이죠. 이방면에 고수분들 도와주세요~ http://www.gnu.org/software/libiconv/ 소스코드 주소입니다. 그리고 유용한 유니코드변환라이브러리 찾아요 읽어주셔서 고맙구요. 공부에 많은 도움이 되시기를 바랍니다. ~~~~~~~ 한국 결승진출을 염원하며...
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved