Closed n6151h closed 9 years ago
Apparently, very version dependent. Going through each of these one by one, specifying version (e.g.
cabal install 'bytestring ==0.9.*'
got me past this.
But, I did see messages like:
src/Control/Lens/Internal/ByteString.hs:64:29: Warning:
In the use of `BI.inlinePerformIO'
(imported from Data.ByteString.Internal):
Deprecated: "If you think you know what you are doing, use 'unsafePerformIO'. If you are sure you know what you are doing, use 'unsafeDupablePerformIO'. If you enjoy sharing an address space with a malevolent agent of chaos, try 'accursedUnutterablePerformIO'."
Really doesn't give me great confidence that uploading my data to your servers won't leave those data vulnerable to a "malevolent agent of chaos".
Moving right along,
configure cabal
Produced the following warning:
Warning: This package indirectly depends on multiple versions of the same
package. This is highly likely to cause a compile failure.
package text-1.2.1.3 requires binary-0.5.1.1
package pureMD5-2.1.2.1 requires binary-0.5.1.1
package text-1.2.1.3 requires binary-0.7.6.1
package unix-2.6.0.1 requires bytestring-0.10.0.2
package text-1.2.1.3 requires bytestring-0.10.0.2
package regex-pcre-0.94.4 requires bytestring-0.10.0.2
package regex-base-0.93.2 requires bytestring-0.10.0.2
package pureMD5-2.1.2.1 requires bytestring-0.10.0.2
package json-0.7 requires bytestring-0.10.0.2
package hastache-0.6.1 requires bytestring-0.10.0.2
package entropy-0.3.7 requires bytestring-0.10.0.2
package crypto-api-0.13.2 requires bytestring-0.10.0.2
package cereal-0.4.1.1 requires bytestring-0.10.0.2
package bytestring-builder-0.10.6.0.0 requires bytestring-0.10.0.2
package blaze-builder-0.4.0.1 requires bytestring-0.10.0.2
package binary-0.5.1.1 requires bytestring-0.10.0.2
package unix-2.7.1.0 requires bytestring-0.10.6.0
package text-1.2.1.3 requires bytestring-0.10.6.0
package text-0.11.3.1 requires bytestring-0.10.6.0
package semigroups-0.16.2.2 requires bytestring-0.10.6.0
package parsec-3.1.9 requires bytestring-0.10.6.0
package network-2.5.0.0 requires bytestring-0.10.6.0
package lens-3.10.3 requires bytestring-0.10.6.0
package hashable-1.2.3.3 requires bytestring-0.10.6.0
package cgi-3001.1.8.5 requires bytestring-0.10.6.0
package binary-0.7.6.1 requires bytestring-0.10.6.0
package degust-0.14 requires bytestring-0.9.2.1
package transformers-compat-0.4.0.3 requires mtl-2.1.3.1
package parsec-3.1.9 requires mtl-2.1.3.1
package lens-3.10.3 requires mtl-2.1.3.1
package cgi-3001.1.8.5 requires mtl-2.1.3.1
package regex-base-0.93.2 requires mtl-2.2.1
package json-0.7 requires mtl-2.2.1
package hastache-0.6.1 requires mtl-2.2.1
package semigroups-0.16.2.2 requires text-0.11.3.1
package lens-3.10.3 requires text-0.11.3.1
package hashable-1.2.3.3 requires text-0.11.3.1
package degust-0.14 requires text-0.11.3.1
package parsec-3.1.9 requires text-1.2.1.3
package json-0.7 requires text-1.2.1.3
package hastache-0.6.1 requires text-1.2.1.3
package blaze-builder-0.4.0.1 requires text-1.2.1.3
package transformers-compat-0.4.0.3 requires transformers-0.3.0.0
package semigroupoids-4.3 requires transformers-0.3.0.0
package profunctors-4.4.1 requires transformers-0.3.0.0
package primitive-0.6 requires transformers-0.3.0.0
package mtl-2.1.3.1 requires transformers-0.3.0.0
package monads-tf-0.1.0.2 requires transformers-0.3.0.0
package lens-3.10.3 requires transformers-0.3.0.0
package distributive-0.4.4 requires transformers-0.3.0.0
package contravariant-1.3.2 requires transformers-0.3.0.0
package comonad-4.2.7.2 requires transformers-0.3.0.0
package StateVar-1.1.0.1 requires transformers-0.3.0.0
package MonadCatchIO-transformers-0.3.1.0 requires transformers-0.3.0.0
package mtl-2.2.1 requires transformers-0.4.3.0
package hastache-0.6.1 requires transformers-0.4.3.0
package crypto-api-0.13.2 requires transformers-0.4.3.0
package process-1.1.0.2 requires unix-2.6.0.1
package entropy-0.3.7 requires unix-2.6.0.1
package directory-1.2.0.1 requires unix-2.6.0.1
package degust-0.14 requires unix-2.6.0.1
package network-2.5.0.0 requires unix-2.7.1.0
Throwing caution to the wind, I proceeded with the build and still got
Building 'prod-server'
Combining css and minifying...
Compiling CoffeeScript and bundling all js...
Building app/js/common-req.coffee -> build/common.js
Building app/js/compare-req.coffee -> build/compare.js
Building app/js/config-req.coffee -> build/config.js
Building app/js/slickgrid-req.coffee -> build/slickgrid.js
Building backend
Building degust-0.14...
Preprocessing executable 'r-json' for degust-0.14...
<command line>: cannot satisfy -package-id cgi-3001.1.8.5-0c249e17d94940b6845cdf2619d4301e:
cgi-3001.1.8.5-0c249e17d94940b6845cdf2619d4301e is unusable due to missing or recursive dependencies:
network-2.5.0.0-0bac4252f1dbeaea1bfff559a5bd4788 parsec-3.1.9-cd1910ba848c30e8f3c663e2f8b41d31
(use -v for more information)
So, I tried to re-install network, specifying 2.5.* and got
nicks@numidea:~/prova/degust$ cabal install 'network==2.5.*' --reinstall
Resolving dependencies...
In order, the following would be installed:
network-2.5.0.0 (reinstall)
cabal: The following packages are likely to be broken by the reinstalls:
cgi-3001.1.8.5
Use --force-reinstalls if you want to install anyway.
Long and short of it is this: Do you have a build script that works?
Getting the specific versions of haskell libraries can be tricky. The best solution I've found is to use a cabal sandbox.
I've documented the building process on an ubuntu box that may help you: 8d6b38f0ee402fae9bd5cfe21325f57e30c97268
During build-prod I see the following output:
I run the configure command and get:
I have already installed all of these, but, didn't use the
--global
switch, so tried again (just with bytestring package to save a bit of time.):and re-run cabal configure:
Is this a known or simple issue, requiring specific version of cabal, perhaps? If not, I'll dig some more but wanted to ask before I invested any more time trying to get this to build.
Cheers, Nick