タグ

cabalに関するjoan9のブックマーク (14)

  • Haskellのビルドツール"stack"の紹介 - Qiita

    Stackとは? つい先日のことですが、Stackage界隈からstackというツールがリリースされました。リリースされたとはいえ、開発され始めたのがちょっと前のことですし、現在も盛んに機能が追加されているので、絶賛開発中であるとかそういったほうがいいかもしれません。 まだ開発の始まったばかりのツールなのに、なぜこんな紹介記事を書こうと思ったのかというと、このツールがHaskellの開発において極めて有用になることが確定的に明らかであって、すでに荒削りながらも、大変便利に使えているからなのです。そしてここで紹介することで、多くの読者の方に興味を持ってもらって、それで開発がさらに盛り上がっていくと嬉しいなあと、そう思った次第であります。 なお、stackの開発が始まる少し前に、stackage-cliを始めとするいくつかのツールがリリースされましたが、今後開発はstackに一化されるような

    Haskellのビルドツール"stack"の紹介 - Qiita
  • Error while creating test suites: "cannot satisfy -package-id"

    joan9
    joan9 2014/10/25
    cabal buildで"cannot satisfy package-id myModule-0.1.0.0-inplace"ッて言われる件。そういうことか > “The build-depends section can only contain libraries, not modules.”
  • Hackageのアカウントを取得する - Qiita

    hackageにpackageを公開するにはaccountを取得する必要があります。 アカウント作成 http://hackage.haskell.org/packages/accounts.html 今回は以下の内容でmailを送りました。 簡単な自己紹介 公開したいpackageの情報(今回はgithubへのリンク) 希望するaccount名 JSTで23:30頃mail送信したところ、20分ほどで返信が帰って来ました。 アカウントの確認 passwordを返信してくれるので、上記のaccountsのページからpasswordを 適当に変更しておきます。 あとは作成済みのpackageをtar.gzにかためてuploadします。 cabalのsdistとuploadコマンドでCLIで行えます。 $ cabal configure $ cabal build $ cabal sdist

    Hackageのアカウントを取得する - Qiita
  • CabalizeされたHaskellプロジェクトでバージョン番号のbump upを忘れないためには - maoeのブログ

    cabalファイルのversionは上げたけど、コマンドラインから--helpしたときに出力されるバージョン番号のアップデートを忘れていた!というのはよくある話です。 僕も先日まで知らなかったのですが、cabalizeされたHaskellプロジェクトなら、cabalファイルで指定したversionをAPI経由で取り出すことができます。つまりバージョン番号の管理をcabalファイルで一元管理することができます。 TKYProfで実際に使っているので紹介します。 CabalにはPaths_という名前のモジュールを生成する機能(参考)があります。TKYProfならpkgnameはtkyprofなので、Paths_tkyprofです。これを使えばプログラマブルにバージョン番号を取り出せます。 Paths_は次のようなAPIになっています。 version :: Version getBinDir,

    CabalizeされたHaskellプロジェクトでバージョン番号のbump upを忘れないためには - maoeのブログ
  • Error when running cabal-install: ExitFailure 1 (Mac OS X lion)

    I get the following error when trying to run cabal install cabal-install I have installed the haskell platform from: http://www.haskell.org/platform/ for Mac OS X Lion. I want to run cabal install cabal-install so I can install quickcheck When trying to update, I get this erro. $ cabal install cabal-install Resolving dependencies... Configuring cabal-install-1.16.0... Building cabal-install-1.16.0

    Error when running cabal-install: ExitFailure 1 (Mac OS X lion)
    joan9
    joan9 2013/08/26
    sudo ghc-pkg recache でうまくいった
  • (び) on Twitter: "@nobsun cabal-devがインストールできない。依存モジュールのビルドでこけてる。"

  • 2013年8月現在のHaskell開発環境 - maoeのブログ

    以前はHaskell Platformを使っていたのだけど、Cabalの依存関係ソルバがあまり賢くなかったこともあり、いわゆるdependency hellに陥ることが多かった。それからというものHaskell Platformを使わない環境を使っている。OS Xでは公式のインストーラやらHomebrewやMac Portsなど幾つかの方法が用意されているが、こんな方法もあるよということで紹介してみよう。 GHCのインストール GHCのリリース版は自分でビルドしない。時間が掛かるから。インストーラは使わずにtarball版を使う。これはインストール先を自分で指定したいため。 tar zxvf ~/Downloads/ghc-7.6.3-x86_64-apple-darwin.tar.bz2 cd ghc-7.6.3/ ./configure --prefix=/usr/local/ghc/

    2013年8月現在のHaskell開発環境 - maoeのブログ
  • What does Cabal ExitFailure 127 mean?

    joan9
    joan9 2013/08/05
    ExitFailure 127
  • jpaugh/cabaret · GitHub

  • CabalによるHackageへのアップロードとSetup.hsの使い方 - kryozahiro’s diary

    CabalでHackageにパッケージを上げたのでやり方をまとめておきます。 0.Hackageのアカウントを用意する Hackageはダウンロードなら誰にでも出来るようになっていますが、アップロードするにはアカウントが必要になります。説明を読んで、ross@soi.city.ac.ukに(英語で)ユーザ名と初期パスワードをもらいましょう。 1.cabalファイルとSetup.hsの生成 次に、cabalコマンドを使って必要なファイルを.tar.gz形式のパッケージにまとめます。まずはアップロードしたいプロジェクトのディレクトリ内で $ cabal init をすると、パッケージ名や作者名を対話的に設定してくれます。この設定ファイルはプロジェクト名.cabalという名前で保存されますが、同時にSetup.hsというHaskellコードも生成されます。これはプロジェクトをビルドするために使う

    CabalによるHackageへのアップロードとSetup.hsの使い方 - kryozahiro’s diary
  • 第56回 Cabalを使ってパッケージを作成する

    これまでの回では、Cabalを使って作成したHaskellのパッケージをたびたび利用してきました。しかし、そうしたパッケージの作り方をきちんと説明したことはありませんでした。今回は、Cabalによるパッケージの作成方法を詳しく説明します。 パッケージの雛形を作成する Cabalを使ったパッケージの構成には、多くのパッケージに共通する定型の部分と、パッケージごとに異なる部分が存在します。このうち定型部分の作成は自動化できます。 その目的でCabalが提供しているのがcabal initコマンドです。このコマンドを使うことで、パッケージの構成に必要な一通りのファイルを用意できます。新しくパッケージを作る場合には、cabal initコマンドでパッケージの雛形を作成するとよいでしょう。このコマンドの実行後に表示される個々の質問でのデフォルト値は、最新版の「cabal-install 1.16.0

    第56回 Cabalを使ってパッケージを作成する
  • cabalコマンドの使い方 - あどけない話

    Cabal は Haskell のパッケージ管理システムです。枠組みとしての Cabal と、コマンドの cabal があり、間違いやすいです。 Cabal は、パッケージをコンパイルし、インストールする枠組みです configure, make, make install に相当 cabal は、パッケージの依存関係を調べ、必要なパッケージをダウンロードして、インストールするためのコマンドです cabal-install と呼ばれることもあります ここでは、コマンド cabal の使い方を説明します。 インストール 各 OS のパッケージ管理システムを使って cabal をインストールしましょう。GHC を扱っているパッケージ管理システムであれば、cabal にも対応しているはずです。 MacPorts では、以下のようにします。 % sudo port install hs-cabal

    cabalコマンドの使い方 - あどけない話
  • cabal の使い方 - melpon日記 - HaskellもC++もまともに扱えないへたれのページ

    cabal は dependency hell が怖いので、こんな使い方をするのが一番いいんじゃないかなーという方法です。 毎回 cabal-dev を使うのは非常に時間が掛かるし容量も取るのですが、まあ dep hell に引っかかって時間を無駄にするよりはいいんじゃないかなーと。 cabal は cabal-dev をインストールするだけ cabal install cabal-dev cabal の出番はこれだけで、あとは cabal-dev を使います。 とりあえず ~/.cabal/bin へのパスは通しておきましょう。 あと、cabal install cabal-dev に失敗してしまうようなら、もうスパッと rm -rf ~/.cabal rm -rf ~/.ghc とかやって、cabal 環境を綺麗にしてしまいましょう。 作りたいアプリケーションごとに cabal-dev

    cabal の使い方 - melpon日記 - HaskellもC++もまともに扱えないへたれのページ
  • EAGLE 雑記

    移行するのか使い分けるのか決めずに始めましたが,移行する気がしています. http://eagletmt.hateblo.jp/ Twitter for iPhone や Photobucket を利用して画像を上げると,画像は p.twimg.com/*.jpg というような場所に置かれる. このパスの部分の文字列がどうやって生成されているのか気になった. しばらく観察してわかったことは 15文字固定 使われる文字は英数字と _ と - 最初のほうの文字はあまり変化がなく,また後に投稿されたものほど辞書順で後になっている ということくらい. で,15文字という点がひっかかるけど,おそらく status id あたりを Base64 でエンコードしたものじゃないかと思っていろいろ試したら,以下のコードで先頭から11文字目まで一致する文字列を生成できてるっぽい. require 'base6

    EAGLE 雑記
  • 1