Haskell之Yesod开发–边踩坑边开发(3)
来源:互联网 发布:php管理软件 编辑:程序博客网 时间:2024/05/18 02:49
今天我们来认识一下yesod-bin
从一个干净的环境下进行如下安装步骤,以windows为例
- 安装haskell-platform(你可以手动安装cabal和ghc)
- 更新cabal。 cabal update
- 更新caball-install。 cabal install –global cabal-install 记得一定要带上global参数,否则你的更新只是在当前的cabal环境中,并没有什么luan用
- 切换到一个目录下(例如c:\lib\yesod) 这个目录会成为你的yesod的主目录,就像jdk一样
- 执行cabal sandbox init 我们使用沙盒技术,来将所需要的依赖都安装在此目录中
- 这里是可以复制一个叫做cabal.config的文件的,但是我尝试过两个链接https://www.stackage.org/nightly-2015-05-28和http://www.stackage.org/lts/cabal.config,反而会引起yesod安装不成功,故跳过此步
- 安装yesod-bin。 cabal install yesod-bin (在http://blog.pangyanhan.com/haskell/2013-11-31-using-cabal-sandbox-libraries.html这里,第7步和第8步是相反的,但是我按照他说的安装不了,倒置之后可以成功)
- 安装yesod。 cabal install yesod (觉得没什么luan用,但保险起见还是安装一下)
- 设置环境变量,将c:\lib\yesod.cabal-sandbox和c:\lib\yesod.cabal-sandbox\bin增加到path中,你应该会注意到在\bin下面有一个yesod.exe.对的,我们接下来主要使用这个东西
- 现在进入到你的工程目录中
- 执行yesod init 按提示生成你需要的工程种类。我这里选择了simple
- 现在可以http://www.yesodweb.com/book/basics 这里的Helloworld来测试一下。
Done
接下来我们想搞搞数据库方面。按照http://www.yesodweb.com/book-1.4/persistent第一段代码,实验一下。
>runHaskell -package-db=c:\lib\yesod\.cabal-sandbox\i386-windows-ghc-7.8.3-packages.conf.d Db
不出意外的话,你会收到一条Error信息,提示Database.Persist.Sqlite找不到,那我们回来安装一下
切换到c:\lib\yesod,执行 cabal install persistent-sqlite
重新执行。
Done!
如果你想尝试mysql的连接,可以使用yesod init 来生成带有mysql的项目,然后执行
runHaskell -package-db=c:\lib\yesod\.cabal-sandbox\i386-windows-ghc-7.8.3-packages.conf.d app/main
会提示你,ClassyPrelude.Yesod,Database.Persist.MySql,Yesod.Static,Yesod.Jesmini没有安装
还是回到c:\lib\yesod目录
执行cabal install yesod.static 可以消除Yesod.static和Yesod.Jesmini的错误
但是当你安装cabal install persistent-mysql时,会提示你需要linux环境来编译pcre-light包。
0 0
- Haskell之Yesod开发–边踩坑边开发(3)
- Haskell之Yesod开发–边踩坑边开发(1)
- Haskell之Yesod开发–边踩坑边开发(2)
- Haskell之Yesod开发–边踩坑边开发(4)
- Haskell之Yesod开发–边踩坑边开发(4.1)
- Haskell之Yesod开发–边踩坑边开发(2.1)
- Haskell之Yesod开发–基础环境
- Haskell之Yesod开发–简单网站开发
- Haskell之Yesod开发–简单网站开发(一)
- Haskell之Yesod开发–简单网站开发(二)
- Haskell之Yesod开发–简单网站开发(三)
- Haskell之Yesod开发–简单网站开发(四)
- Haskell之Yesod开发–简单网站开发(五)
- Haskell的yesod框架-1
- Haskell的Yesod技术大全
- Haskell 开发环境搭建
- sublime text开发haskell
- haskell(3)
- AES加密解密Android版
- [华为机试练习题]35.找零钱
- iOS 画图 图片圆形处理 并画圈
- asp.net读取xml
- nginx 二级域名隐藏端口跳转及文件上传注意 配置示例
- Haskell之Yesod开发–边踩坑边开发(3)
- 内容监视者
- linux下安装Maven
- 《Java并发编程实践》笔记8——Fork/Join框架
- armv6, armv7, armv7s的区别
- 欢迎使用CSDN-markdown编辑器
- 支持向量机通俗导论(理解SVM的三层境界)
- nth-to-last-node-in-list
- UIlabel特殊属性的使用