私はHaskellの愛好家で、Windows上で私の小さなHaskellプログラムをコンパイルしてしまいました。私のプログラムはiconvパッケージを使用します。パッケージはc/C++で書かれた外部ライブラリを使用します。WindowsでHaskell-PlatformとC++ dllをリンクすると、 'undefined reference'が出力されます。
- 実行GNU-Iconvセットアップをして 「libiconv2.dll」と「libiconv2.dll」が
PATH
変数に、位置しているその「ビン」フォルダを、追加しました:作るために、物事は、私が持っている仕事します。 - 'LibIconv開発者ファイル'を 'mingw'フォルダ Haskell Platformの場所に抽出してコピーしました。
- 「cabal install iconv」がコンパイルされ、cabalパッケージ がインストールされています。
さて、私はLeksahに私のモジュールをビルドしようとすると、私は 'GHC' から次のメッセージを取得: 'GHCiの' で
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
を、私はあまりにも問題に直面します。
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'
私は考えられる解決策は、 'mingw'フォルダへのc/C++ヘッダファイルの適切な設定と 'lib'ファイルへのPATH変数の設定にあると思いますが、私はそれについてほとんど知識がないので、 。
これは古い問題ですlibiconv。たぶん、このスレッドは助けになるでしょう:http://www.mail-archive.com/[email protected]/msg00858.html –
UPDATE。お返事をありがとうございます。より深く潜って答えを見つけよう: http://www.haskell.org/pipermail/haskell-cafe/2011-February/089234.htmlとここに http://www.progtown.com/topic190618-haskell-iconv -on-win32-iconvopen.html – Rijk
@アイボリー - 答えを見つけたら、投稿して受け入れるべきです。 – sclv