Dust
Dust copied to clipboard
New build issue with Debian+threefish (maintainer build)+Dust-2.3.1
Hello blanu,
I have added the Debian install instructions to the repo Wiki, as per your request.
However, I am running into a new issue since the code 2.3.1 release. I setup a fresh Debian VM to do the build.
I do the build of threefish
[...threefish build/install from your git repo...]
I then go to build/install Dust.
root@Euclid:/source/Dust/hs# cabal configure Resolving dependencies... Configuring Dust-2.3.1... cabal: At least the following dependencies are missing: Dust-crypto -any, network -any, random-extras -any, random-fu -any, random-source -any, split -any root@Euclid:/source/Dust/hs# cabal install --only-dependencies Resolving dependencies... cabal: Could not resolve dependencies: trying: Dust-2.3.1 (user goal) trying: threefish-0.2.2/installed-14a... (dependency of Dust-2.3.1) trying: directory-1.1.0.2/installed-eba... (dependency of Dust-2.3.1) next goal: unix (dependency of directory-1.1.0.2/installed-eba...) rejecting: unix-2.7.0.0/installed-d02... (conflict: directory => unix==2.5.1.0/installed-3c1...) rejecting: unix-2.5.1.0/installed-3c1... (conflict: threefish => bytestring==0.10.4.0/installed-5cf..., unix => bytestring==0.9.2.1/installed-18f...) rejecting: unix-2.7.0.0, 2.6.0.1, 2.6.0.0, 2.5.1.1, 2.5.1.0, 2.5.0.0, 2.4.2.0, 2.4.1.0, 2.4.0.2, 2.4.0.1, 2.4.0.0, 2.3.2.0, 2.3.1.0, 2.3.0.0, 2.2.0.0, 2.0 (conflict: directory => unix==2.5.1.0/installed-3c1...)
Hm! I'm not sure what I changed that would have caused this. I don't think there are any new dependencies. I've just been moving things around.
What version of the unix and directory packages do you have installed?
Debian 7.
Directory packages?
Btw, this is the same fellow who had to install your version of threefish. Just FYI.
As far as I can tell, there is a conflict installing the "unix" package, which has different versions required by the "directory" and "bytestring" packages. These are required (with specific versions) by threefish. threefish is required by Dust.
So if you can tell me what versions you have of the unix, directory, and bytestring packages, I can fix the required versions for the dependencies in the threefish package. Hopefully that will resolve the problem.
unix-2.7.0.0 bytestring-0.10.4.0
I did not see directory mentioned during build. For complete output of my build reference:
http://pastebin.com/NtzyKjhk
What's your default build environment? I've been held up because of these dependency issues, and I'd like to try out dust-tools.
My apologies that I haven't been able to spend more time looking into this. I'm using Ubuntu 12.04.
One thing you might try is to use --force-install and --force-reinstall to install the packages despite the version conflict warnings. This is not the best solution if you have actual Haskell packages installed, but it might work if you're only using Haskell to install Dust-tools.
I'm not sure what the long-term plan for getting out of this dependency hell should be. One solution is to reduce the number of dependencies by forking the libraries and including the parts I actually use. Another possibility is to provide pre-compiled binaries for a few popular platforms like Ubuntu and Debian so that you don't have to compile any Haskell code at all. This is probably what will happen once the C API to Dust is available.
No worries, I figured with the holidays, you were likely busy.
"cabal: unrecognised command: --force-install (try --help)"
I read the man and did not see support for --force-install
Ah sorry. The correct flag is --force-reinstalls
That didn't work...again, I think my version doesn't have a --force-anything. If you'd like I'd be happy to set you up with a test lab with Debian or any other OS you wish. We'd just need to correspond via email....Just putting that out there.