有没有人成功构建了Cygwin版本的GHC(因为Haskell从使用Cygwin转为MinGW)?
来自haskell网站:
“GHC的目标是MinGW,而不是Cygwin。原则上可以构建GHC的版本,GHC-cygwin,而不是针对Cygwin.GHC-cygwin的最新版本是GHC编译的Haskell程序-cygwin可以导入(Haskell)Posix库。但是,我们不支持GHC-cygwin;它超出了我们的资源。“ https://ghc.haskell.org/trac/ghc/wiki/Building/Platforms/Windows
我尝试使用Cygwin的configure / gcc构建,但未成功。这失败是因为我无法让Windows版本的GHC使用Cygwin的gcc。这似乎是因为Windows的GHC版本被“注册”并且无法输出c代码。此外,这种“取消注册和移植”方法是no longer supported.
如果有人完成了这个(因为Haskell从使用Cygwin转到MinGW),我真的很想知道。关于如何做到这一点的说明会很棒但是如果有人完成了这个,那么简单的“是”将是非常宝贵的。
我最近的尝试是使用交叉编译标志--target=i386-unknown-cygwin32
的MinGW / MSys。这是结果错误:
HSC2HS libraries/haskeline/dist-install/build/System/Console/Haskeline/Backend/Win32.hs
libraries\haskeline\System\Console\Haskeline\Backend\Win32.hsc:169
directive let cannot be handled in cross-compilation mode
make[1]: *** [libraries/haskeline/dist-install/build/System/Console/Haskeline/Backend/Win32.hs] Error 1 make: ***
[all] Error 2
由于程序需要与cygwin1.dll
链接,我不认为将目标设置为Linux体系结构会很有用。