2017-02-14 6 views
8

현재 Go 프로젝트를 설정하려고합니다. 다른 2 명의 개발자가 Mac에서 작업하는 동안 Windows를 실행 중이라고 생각할 때 몇 가지 문제가 있습니다. 몇 개의 패키지를 설치합니다.libiconv에 의존하는 MinGW 패키지를 설치하려면 어떻게해야합니까?

cmd를 사용하여 패키지를 설치하려고 시도한 후에 4 개 중 2 개만 설치할 수있었습니다. 다른 2 개에는 gcc가 필요했습니다.

따라서 MinGW를 설치했습니다. 그런 식으로 세 번째 패키지를 설치할 수 있었지만 지금은 https://github.com/mikkyang/id3-go에 붙어 있습니다.

다른 기본 프로젝트 인 https://github.com/djimenez/iconv-go에 의존하는 것으로 보입니다.

src\github.com\djimenez\iconv-go\converter.go:8:19: fatal error: iconv.h: No such file or directory 

은 어떻게 든, 내가는 MinGW와 libiconv 사용할 필요하지만 어떻게 두 부분을 연결하는 아무 생각이 : 나는 ID3-이동 go install 시도하는 순간은, 난 항상이 오류와 함께 왼쪽입니다. 나는 그 분야의 전문가가 아니기 때문에 어떤 도움을 많이 주시면 감사하겠습니다. 이미 Windows 용 libiconv를 다운로드했습니다. https://github.com/mikkyang/id3-go/issues/21

편집 : 나는 GitHub의 프로젝트에서 발견 자세한 내용은

관련 문제는 내가 모든 문제에 일부 진전을했다. 지금 내가 필요한 모든 파일을 가지고,하지만 지금은이 경고와 함께 붙어 :

# github.com/djimenez/iconv-go 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -liconv 
collect2.exe: error: ld returned 1 exit status 

내가 mingw32 lib 폴더 내 libiconv 설치에서 libiconv2.a을 추가했지만, 다음이 내가 끝낼 것입니다 최대 :

# github.com/djimenez/iconv-go 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/../lib/libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/../lib\libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib\libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/../lib/libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/lib/libiconv.a when searching for -liconv 
E:/Tools/TDM-GCC/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -liconv 
collect2.exe: error: ld returned 1 exit status 

여기부터 진행하는 방법을 모릅니다.

+0

'gcc'가 필요한 패키지는 무엇입니까? – eduncan911

+0

id3-go : https://github.com/mikkyang/id3-go – Sossenbinder

+0

해당 패키지에 컴파일 사용이 표시되지 않습니다. – eduncan911

답변

2

go install github.com/google/gopacketCGO이 필요하면 같은 문제가 발생했습니다. libiconv2.a이 다른 컴파일러에서 생성 되었기 때문에 mingw32 컴파일러와 호환되지 않습니다. 오류 메시지에 나와 있습니다. \ TDM-GCC-64 \ x86_64의 : 당신의 PC

  • 실행 gendef (C에 위치에

    1. 찾기 libiconv-2.dll합니다 (coresonding 동적 라이브러리) : 우리는 mingw32 도구 세트와 함께 정적 lib 디렉토리를 생성해야합니다 해당 파일 gendef libiconv-2.dll 내 64 비트 Windows)에서 -w64-mingw32 \ bin에,이 libiconv2.def 파일을 생성합니다
    2. 그리고 정적 라이브러리 생성 :

      dlltool --as-flags=--64 -m i386:x86-64 -k --output-lib libiconv2.a --input-def libiconv2.def

    3. libiconv2.a를 적절한 위치에 복사하십시오.