cabal

Build fails because of “multiple definition” linker errors in native dependencies

試著忘記壹切 提交于 2019-12-05 00:09:12
I maintain an open-source framework that uses CircleCI for continuous integration. I've recently hit a wall where the project suddenly refused to build in rather strange circumstances. Build 27 was the last one that succeeded. After that, I made some minor changes to dependencies and noticed that the build fails. I've tried to fix it without success, so I reverted back to last working configuration and it still failed . The reason for failure are two dependencies, both being bindings to native C libraries: OpenGL ( OpenGLRaw ) and GLFW ( bindings-glfw ). They error out in link stage with

Why are cabal reinstalls “always dangerous”?

不羁的心 提交于 2019-12-04 23:59:29
When reinstalling a package using Cabal, one usually sees this warning: Warning: Note that reinstalls are always dangerous. Continuing anyway... What are some of the reasons behind this message? Currently, reinstalling a package means destructively overwriting an already installed package. If that old package has any reverse dependencies on the system, they'll no longer work. To make this less likely, cabal-install checks the package databases it has access to when invoked for such reverse dependencies and lists them. In this situation, it requires --force-reinstalls to continue. But even if

Cabal install error: The package has a './configure' script. This requires a Unix

限于喜欢 提交于 2019-12-04 20:19:17
I'm trying to install network and old-time with cabal-install. When I try to install either it fails with: setup.exe: The package has a './configure' script. This requires a Unix compatibility toolchain such as MinGW+MSYS or Cygwin. I do have MinGW, in fact it's the MinGW distributed along with GHC. I've also added the bin folder to my PATH. How can I fix this? what tool is the one actually running the configure files? maybe I need to get it? GHC 7.10.1 x64 cabal-install version 1.22.0.0 using version 1.22.0.0 of the Cabal library. And I'm actually on a Windows 10 pro insider preview build

cabal reports “/usr/bin/ld: cannot find -lHSrandom-1.0.1.1-ghc7.8.3”

ε祈祈猫儿з 提交于 2019-12-04 19:54:18
问题 I have Ubuntu 14.04LTS. I downloaded the latest ghc-7.8.3 from http://www.haskell.org/ghc/download_ghc_7_8_3#x86_64linux and installed it to /usr/local . Then I updated my cabal to version 1.20.0.3 . I typed cabal install QuickCheck into my terminal, and got: Resolving dependencies... Configuring tf-random-0.5... Building tf-random-0.5... Preprocessing library tf-random-0.5... [1 of 4] Compiling System.Random.TF.Gen ( src/System/Random/TF/Gen.hs, dist/build/System/Random/TF/Gen.o ) [2 of 4]

“cabal install cabal-install” doesn't update cabal version in OSX

≯℡__Kan透↙ 提交于 2019-12-04 18:42:29
问题 I'm a newbie to haskell and cabal, so I'm probably missing something simple. I updated cabal-install: sudo cabal install cabal-install Password: Resolving dependencies... Configuring cabal-install-1.22.0.0... Building cabal-install-1.22.0.0... Installed cabal-install-1.22.0.0 Updating documentation index However cabal --version says: cabal-install version 1.18.0.5 using version 1.18.1.4 of the Cabal library What happened to cabal-install 1.22.0.0? 回答1: There are two ways of making cabal

How do I add the “containers” package to my .cabal file (without getting overwritten by stack at compile time)?

痞子三分冷 提交于 2019-12-04 18:14:48
问题 I am working on the "roman-numerals" task from the exercism Haskell track and followed their instructions to installing stack. I am working on a Fedora 24 box. As long as I was working with Haskell modules from base, I didn't have a problem. Now I am trying to import the Data.Map module. It works fine using the ghci command line: $ ghci GHCi, version 7.8.4: http://www.haskell.org/ghc/ :? for help Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done.

Where do QuickCheck instances belong in a cabal package?

旧巷老猫 提交于 2019-12-04 15:57:40
问题 I have a cabal package that exports a type NBT which might be useful for other developers. I've gone through the trouble of defining an Arbitrary instance for my type, and it would be a shame to not offer it to other developers for testing their code that integrates my work. However, I want to avoid situations where my instance might get in the way. Perhaps the other developer has a different idea for what the Arbitrary instance should be. Perhaps my package's dependency on a particular

Install Haskell packages using cabal without internet connection

孤街浪徒 提交于 2019-12-04 08:32:18
I have a machine that doesn't have internet access at all. I installed the Haskell Platform on it using the installer which I got from another machine through a pendrive. Now I want to install the package repa on my home machine which has no internet access. How should I do that? My home machine is running Linux (Debian) and my office machine is Windows 7. From a machine you can access the internet you can either: Run cabal get pkg-name where pkg-name is the package you want. Go to the package's page on Hackage and on the Downloads section there's a .tar.gz file you can download. After you get

SBT-like features in the Haskell build ecosystem

落爺英雄遲暮 提交于 2019-12-04 08:21:42
问题 I've been using Scala with SBT quite a bit lately. The REPL loop of has a handy feature: ~ COMMAND , meaning perform COMMAND for every source file change in the project. For instance: ~ test and ~ compile are terrifically useful for rapid development. I wonder, does anyone know of something similar for Haskell, a cabal shell, maybe? 回答1: You can get something like this very easily using inotifywait. Just fire up a terminal in your project directory and run something like this: $ while

Haskell Cabal: Mysterious missing or recursive dependencies

天涯浪子 提交于 2019-12-04 07:29:43
I try to install the jmacro package. It builds perfectly, and there are absolutely no issues. However, when I want to use it or install packages like happstack-jmacro , which depend on jmacro, I get error messages like this: <command line>: cannot satisfy -package-id jmacro-0.5.2-71bd40707d94b0e8eb6e70515ff6a5f4: jmacro-0.5.2-71bd40707d94b0e8eb6e70515ff6a5f4 is unusable due to missing or recursive dependencies: haskell-src-meta-0.5-4bf46b12fb313927e18a04de209944de template-haskell-2.5.0.0-f0b857ddb066aae09d974e610edd228f (use -v for more information) There are absolutely no recursive or