Jestem entuzjastą Haskella i utknąłem podczas kompilowania mojego małego programu Haskell na Windows. Mój program używa pakietu iconv, który z kolei korzysta z biblioteki zagranicznej napisanej w języku c/C++. Żeby było pracować mam:Łączenie C++ dll z Haskell-Platform na Windows, niezdefiniowane referencje wyjść '
- Uruchom GNU-Iconv konfigurację i dodaje folderu „bin”, gdzie „libiconv2.dll” i „libiconv2.dll” znajdują się, aby zmienna
PATH
. - Wyodrębniono i skopiowano "pliki deweloperów LibIconv" do folderu "mingw" z lokalizacji platformy Haskell.
- Następnie kompiluje się "cabal install iconv" i mam zainstalowany pakiet cabal .
Teraz, gdy próbuję zbudować mój moduł w Leksah, pojawia się następujący komunikat z 'GHC':
Building norms-parser-0.0.1...
Linking dist\build\norms-parser\norms-parser.exe ...
C:\Documents and Settings\kdv\Application Data\cabal\iconv-0.4.1.0\ghc-7.0.4/libHSiconv-0.4.1.0.a(hsiconv.o):hsiconv.c:(.text+0x7): undefined reference to `_imp__libiconv_open'
C:\Documents and Settings\kdv\Application Data\cabal\iconv-0.4.1.0\ghc-7.0.4/libHSiconv-0.4.1.0.a(hsiconv.o):hsiconv.c:(.text+0x17): undefined reference to `_imp__libiconv'
C:\Documents and Settings\kdv\Application Data\cabal\iconv-0.4.1.0\ghc-7.0.4/libHSiconv-0.4.1.0.a(hsiconv.o):hsiconv.c:(.text+0x27): undefined reference to `_imp__libiconv_close'
collect2: ld returned 1 exit status
z 'GHCi', I twarz problem zbyt:
ghc.exe: unable to load package `iconv-0.4.1.0'
ghc.exe: C:\Documents and Settings\kdv\Application Data\cabal\iconv-0.4.1.0\ghc- 7.0.4\HSiconv-0.4.1.0.o: unknown symbol `__imp__libiconv_open'
Myślę, że prawdopodobnym rozwiązaniem jest odpowiednie ustawienie plików nagłówkowych c/C++ do folderu "mingw" i ustawienie zmiennych PATH do plików "lib", ale mam niewielką wiedzę na ten temat, więc każda pomoc będzie doceniana .
Jest to stary problem libiconv. Może ten wątek będzie pomocny: http://www.mail-archive.com/[email protected]/msg00858.html –
AKTUALIZACJA. Dzięki za odpowiedź. Nurkuj głębiej i znajduj odpowiedzi: http://www.haskell.org/pipermail/haskell-cafe/2011-February/089234.html i tutaj http://www.progtown.com/topic190618-haskell-iconv -on-win32-iconvopen.html – Rijk
@Iwory - jeśli znalazłeś odpowiedź, powinieneś ją opublikować i zaakceptować. – sclv