我在与Cabal上安装OS X上的Haskell时遇到了麻烦。我正在使用此指南。
原谅我的杂物,但是我要理解的问题始于以下几行:
将捆绑包装到没有空间的路径上,并添加通过将包装到您的%路径%创建的/bin目录。
so so&路径%是我安装的软件包躺在的地方吗?我知道那个文件夹,但是"添加/bin目录通过解开包装创建"的意思是什么?当我从这里下载GTK并解压缩时,任何地方都没有任何文件夹称为"/bin"或" bin"。我的%路径%中有一个目录箱,其中包含一些可执行文件吗?但是,没有创建bin目录的form unippipt,例如gtk-0.14.5.tar.gz?!
显然我做错了什么,因为当我继续指南时,我会检查并获得:
gtk-0.14.5 Admin$ pkg-config --cflags gtk+-2.0
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
If you see some compiler flags that contain the path into which you have installed the binary bundle, you are okay.
嗯什么?有人可以像我五岁那样解释吗?什么是编译标志,什么是二进制捆绑包?就像这些指南假设您已经知道自己在做什么。
很好,我继续尝试通过键入:
来安装GTK的构建工具cabal install gtk2hs-buildtools
首先,它抱怨说我没有" Alex"的东西,然后我没有称为" Happy"的东西。WTF是什么?无论如何,即使我不明白自己在做什么,我也安装了这些。最后,我能够安装构建工具。
因此,现在仅是实际的GTK正确,应该足够简单。我输入:
cabal install gtk
但没有。它给我以下错误消息:
cabal install gtk.cabal
Resolving dependencies...
cabal: Could not resolve dependencies:
next goal: gtk (user goal)
rejecting: gtk-0.14.6 (constraint from user target requires ==0.14.5)
rejecting: gtk-0.14.5 (conflict: requires pkg-config package gtk+-2.0-any, not
found in the pkg-config database)
rejecting: gtk-0.14.4, gtk-0.14.3, gtk-0.14.2, gtk-0.13.9, gtk-0.13.8.1,
gtk-0.13.8, gtk-0.13.7, gtk-0.13.6, gtk-0.13.4, gtk-0.13.3, gtk-0.13.2,
gtk-0.13.1, gtk-0.13.0.3, gtk-0.13.0.2, gtk-0.13.0.1, gtk-0.13.0.0,
gtk-0.12.5.7, gtk-0.12.5.6, gtk-0.12.5.5, gtk-0.12.5.4, gtk-0.12.5.3,
gtk-0.12.5.2, gtk-0.12.5.1, gtk-0.12.5.0, gtk-0.12.4, gtk-0.12.3.1,
gtk-0.12.3, gtk-0.12.2, gtk-0.12.1, gtk-0.12.0, gtk-0.11.2, gtk-0.11.1,
gtk-0.11.0 (constraint from user target requires ==0.14.5)
Dependency tree exhaustively searched.
什么?我什至在看什么?对不起,但是简单地为Haskell安装图书馆的库是如何?谁能帮忙?我现在花了几天的时间尝试安装Haskell库来实际编程某些内容,但是我重申一下,很难简单地安装一个简单的库是怎么回事?我想念什么吗?任何帮助都将不胜感激。
我在ubuntu上解决了这个问题:
sudo apt install libgtk2.0-dev
也许如果您在OS X上安装libgtk2.0-dev(也许与Brew一起),您将能够使用Cabal安装GTK。