Re: [jhc] [Haskell] ANNOUNCE: jhc-0.8.1
I modified it so all packages depended on are listed in only a single
spot in the configuration to make it easier to change and give much
better error messages. see the new
http://repetae.net/repos/jhc/configure.ac and the NEEDS_PACKAGE
macros.
Possibly existing instances are pretty easy to work around, see
USE_MONOID_DOC in the config file. I'll make the show instance for
identity conditionally defined too, since that seems to be floating
around. Having to specify specific versions in the script would be
hacky, much better to actually identify the reasons for
incompatibility and choose based on that.
John
On Mon, May 12, 2014 at 10:36 PM, Krzysztof Skrzętnicki
Hmm, I'll give it a try, thanks! As for the other errors for sure there is missing Binary instance for strict ByteStrings in newest binary package. Another one is instance for Show (Identity a) which in turn needed to be commented out because it appeared in newer version of some other package, don't know which one. Lastly I get a lot of errors caused by mixing library versions. I *think* that the problem is that, unlike Cabal, the Makefile specifies -package foo without specific versions. The result is that, given the fact that I have more than 1 version of many libraries installed, it tries to build with two different versions of same library, or so would it seem: 1 is dependency of other library, the other is from -package specification. I think this is the case. This is why I asked for specific versions of all the libraries involved. The idea was to simply specify *all* of them on command line and/or Makefile.
Right now I don't have time to replicate the errors, but I will try again building jhc later.
Best regards, Krzysztof
On Tue, May 13, 2014 at 5:09 AM, John Meacham
wrote: Yeah, there was a bug in the way it detected editline/readline which has been fixed in the repo.
You can run configure with --disable-line to work around it. or change the word USE_NOLINE to USE_READLINE in src/Util/Interact.hs
always some silly typo that works its way in somewhere. I should stop the version number shift and declare it 1.0.0 and use the third digit for actual point releases rather than keep the perpetual 0.x.y wasting the first digit. but then I can't hide behind the 'beta' shield anymore. :)
John
On Mon, May 12, 2014 at 7:56 PM, Jens Petersen
wrote: Thank you for the new release. :)
On 13 May 2014 04:40, John Meacham
wrote: as for the packages i've been testing with
fgl,regex-compat,bytestring,binary,mtl,containers,unix,utf8-string,zlib,HsSyck,filepath,process,syb,old-time,pretty.
and editline ?
For me it fails to build on Fedora 20 with the readline package but completes with editline.
Krzysztof: maybe try removing or hiding the readline package or posting your build error. :)
Jens
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
I tried to compile from darcs repo, however I am unable to even run
./configure. 'autoreconf' returns an error:
autoreconf
configure.ac:17: error: required file 'ac-macros/compile' not found
configure.ac:17: 'automake --add-missing' can install 'compile'
configure.ac:13: error: required file 'ac-macros/config.guess' not found
configure.ac:13: 'automake --add-missing' can install 'config.guess'
configure.ac:13: error: required file 'ac-macros/config.sub' not found
configure.ac:13: 'automake --add-missing' can install 'config.sub'
configure.ac:5: error: required file 'ac-macros/install-sh' not found
configure.ac:5: 'automake --add-missing' can install 'install-sh'
configure.ac:5: error: required file 'ac-macros/missing' not found
configure.ac:5: 'automake --add-missing' can install 'missing'
parallel-tests: error: required file 'ac-macros/test-driver' not found
parallel-tests: 'automake --add-missing' can install 'test-driver'
autoreconf: automake failed with exit status: 1
I don't know how to proceed.
On Tue, May 13, 2014 at 11:56 AM, John Meacham
I modified it so all packages depended on are listed in only a single spot in the configuration to make it easier to change and give much better error messages. see the new http://repetae.net/repos/jhc/configure.ac and the NEEDS_PACKAGE macros.
Possibly existing instances are pretty easy to work around, see USE_MONOID_DOC in the config file. I'll make the show instance for identity conditionally defined too, since that seems to be floating around. Having to specify specific versions in the script would be hacky, much better to actually identify the reasons for incompatibility and choose based on that.
John
Hmm, I'll give it a try, thanks! As for the other errors for sure there is missing Binary instance for strict ByteStrings in newest binary package. Another one is instance for Show (Identity a) which in turn needed to be commented out because it appeared in newer version of some other package, don't know which one. Lastly I get a lot of errors caused by mixing library versions. I *think* that the problem is that, unlike Cabal, the Makefile specifies -package foo without specific versions. The result is that, given the fact that I have more than 1 version of many libraries installed, it tries to build with two different versions of same library, or so would it seem: 1 is dependency of other library, the other is from -package specification. I think this is
case. This is why I asked for specific versions of all the libraries involved. The idea was to simply specify *all* of them on command line and/or Makefile.
Right now I don't have time to replicate the errors, but I will try again building jhc later.
Best regards, Krzysztof
On Tue, May 13, 2014 at 5:09 AM, John Meacham
wrote: Yeah, there was a bug in the way it detected editline/readline which has been fixed in the repo.
You can run configure with --disable-line to work around it. or change the word USE_NOLINE to USE_READLINE in src/Util/Interact.hs
always some silly typo that works its way in somewhere. I should stop the version number shift and declare it 1.0.0 and use the third digit for actual point releases rather than keep the perpetual 0.x.y wasting the first digit. but then I can't hide behind the 'beta' shield anymore. :)
John
On Mon, May 12, 2014 at 7:56 PM, Jens Petersen
wrote: Thank you for the new release. :)
On 13 May 2014 04:40, John Meacham
wrote: as for the packages i've been testing with
fgl,regex-compat,bytestring,binary,mtl,containers,unix,utf8-string,zlib,HsSyck,filepath,process,syb,old-time,pretty.
and editline ?
For me it fails to build on Fedora 20 with the readline package but completes with editline.
Krzysztof: maybe try removing or hiding the readline package or
On Mon, May 12, 2014 at 10:36 PM, Krzysztof Skrzętnicki
wrote: the posting your build error. :)
Jens
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
autoreconf -i
-i installs anything needed that is missing.
John
On Tue, May 13, 2014 at 4:06 AM, Krzysztof Skrzętnicki
I tried to compile from darcs repo, however I am unable to even run ./configure. 'autoreconf' returns an error:
autoreconf configure.ac:17: error: required file 'ac-macros/compile' not found configure.ac:17: 'automake --add-missing' can install 'compile' configure.ac:13: error: required file 'ac-macros/config.guess' not found configure.ac:13: 'automake --add-missing' can install 'config.guess' configure.ac:13: error: required file 'ac-macros/config.sub' not found configure.ac:13: 'automake --add-missing' can install 'config.sub' configure.ac:5: error: required file 'ac-macros/install-sh' not found configure.ac:5: 'automake --add-missing' can install 'install-sh' configure.ac:5: error: required file 'ac-macros/missing' not found configure.ac:5: 'automake --add-missing' can install 'missing' parallel-tests: error: required file 'ac-macros/test-driver' not found parallel-tests: 'automake --add-missing' can install 'test-driver' autoreconf: automake failed with exit status: 1
I don't know how to proceed.
On Tue, May 13, 2014 at 11:56 AM, John Meacham
wrote: I modified it so all packages depended on are listed in only a single spot in the configuration to make it easier to change and give much better error messages. see the new http://repetae.net/repos/jhc/configure.ac and the NEEDS_PACKAGE macros.
Possibly existing instances are pretty easy to work around, see USE_MONOID_DOC in the config file. I'll make the show instance for identity conditionally defined too, since that seems to be floating around. Having to specify specific versions in the script would be hacky, much better to actually identify the reasons for incompatibility and choose based on that.
John
On Mon, May 12, 2014 at 10:36 PM, Krzysztof Skrzętnicki
wrote: Hmm, I'll give it a try, thanks! As for the other errors for sure there is missing Binary instance for strict ByteStrings in newest binary package. Another one is instance for Show (Identity a) which in turn needed to be commented out because it appeared in newer version of some other package, don't know which one. Lastly I get a lot of errors caused by mixing library versions. I *think* that the problem is that, unlike Cabal, the Makefile specifies -package foo without specific versions. The result is that, given the fact that I have more than 1 version of many libraries installed, it tries to build with two different versions of same library, or so would it seem: 1 is dependency of other library, the other is from -package specification. I think this is the case. This is why I asked for specific versions of all the libraries involved. The idea was to simply specify *all* of them on command line and/or Makefile.
Right now I don't have time to replicate the errors, but I will try again building jhc later.
Best regards, Krzysztof
On Tue, May 13, 2014 at 5:09 AM, John Meacham
wrote: Yeah, there was a bug in the way it detected editline/readline which has been fixed in the repo.
You can run configure with --disable-line to work around it. or change the word USE_NOLINE to USE_READLINE in src/Util/Interact.hs
always some silly typo that works its way in somewhere. I should stop the version number shift and declare it 1.0.0 and use the third digit for actual point releases rather than keep the perpetual 0.x.y wasting the first digit. but then I can't hide behind the 'beta' shield anymore. :)
John
On Mon, May 12, 2014 at 7:56 PM, Jens Petersen
wrote: Thank you for the new release. :)
On 13 May 2014 04:40, John Meacham
wrote: as for the packages i've been testing with
fgl,regex-compat,bytestring,binary,mtl,containers,unix,utf8-string,zlib,HsSyck,filepath,process,syb,old-time,pretty.
and editline ?
For me it fails to build on Fedora 20 with the readline package but completes with editline.
Krzysztof: maybe try removing or hiding the readline package or posting your build error. :)
Jens
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
Just pushed a patch that will only create the show identity instance
if it is missing. If you could test it, that would be great. I assumed
if it existed it would come from Control.Monad.Identity, perhaps that
is not true though. Also fixed some other #ifdefs that depended on GHC
version numbers to use proper HS_HAS_INSTANCE checks.
The docs for development mention the requirements for using the darcs tree.
http://repetae.net/computer/jhc/development.shtml
the prerequisites are a little out of date though. that doc is part of
the repo in docs/development.mkd
John
On Tue, May 13, 2014 at 5:43 AM, John Meacham
autoreconf -i
-i installs anything needed that is missing.
John
On Tue, May 13, 2014 at 4:06 AM, Krzysztof Skrzętnicki
wrote: I tried to compile from darcs repo, however I am unable to even run ./configure. 'autoreconf' returns an error:
autoreconf configure.ac:17: error: required file 'ac-macros/compile' not found configure.ac:17: 'automake --add-missing' can install 'compile' configure.ac:13: error: required file 'ac-macros/config.guess' not found configure.ac:13: 'automake --add-missing' can install 'config.guess' configure.ac:13: error: required file 'ac-macros/config.sub' not found configure.ac:13: 'automake --add-missing' can install 'config.sub' configure.ac:5: error: required file 'ac-macros/install-sh' not found configure.ac:5: 'automake --add-missing' can install 'install-sh' configure.ac:5: error: required file 'ac-macros/missing' not found configure.ac:5: 'automake --add-missing' can install 'missing' parallel-tests: error: required file 'ac-macros/test-driver' not found parallel-tests: 'automake --add-missing' can install 'test-driver' autoreconf: automake failed with exit status: 1
I don't know how to proceed.
On Tue, May 13, 2014 at 11:56 AM, John Meacham
wrote: I modified it so all packages depended on are listed in only a single spot in the configuration to make it easier to change and give much better error messages. see the new http://repetae.net/repos/jhc/configure.ac and the NEEDS_PACKAGE macros.
Possibly existing instances are pretty easy to work around, see USE_MONOID_DOC in the config file. I'll make the show instance for identity conditionally defined too, since that seems to be floating around. Having to specify specific versions in the script would be hacky, much better to actually identify the reasons for incompatibility and choose based on that.
John
On Mon, May 12, 2014 at 10:36 PM, Krzysztof Skrzętnicki
wrote: Hmm, I'll give it a try, thanks! As for the other errors for sure there is missing Binary instance for strict ByteStrings in newest binary package. Another one is instance for Show (Identity a) which in turn needed to be commented out because it appeared in newer version of some other package, don't know which one. Lastly I get a lot of errors caused by mixing library versions. I *think* that the problem is that, unlike Cabal, the Makefile specifies -package foo without specific versions. The result is that, given the fact that I have more than 1 version of many libraries installed, it tries to build with two different versions of same library, or so would it seem: 1 is dependency of other library, the other is from -package specification. I think this is the case. This is why I asked for specific versions of all the libraries involved. The idea was to simply specify *all* of them on command line and/or Makefile.
Right now I don't have time to replicate the errors, but I will try again building jhc later.
Best regards, Krzysztof
On Tue, May 13, 2014 at 5:09 AM, John Meacham
wrote: Yeah, there was a bug in the way it detected editline/readline which has been fixed in the repo.
You can run configure with --disable-line to work around it. or change the word USE_NOLINE to USE_READLINE in src/Util/Interact.hs
always some silly typo that works its way in somewhere. I should stop the version number shift and declare it 1.0.0 and use the third digit for actual point releases rather than keep the perpetual 0.x.y wasting the first digit. but then I can't hide behind the 'beta' shield anymore. :)
John
On Mon, May 12, 2014 at 7:56 PM, Jens Petersen
wrote: Thank you for the new release. :)
On 13 May 2014 04:40, John Meacham
wrote: > > as for the packages i've been testing with > > > > > fgl,regex-compat,bytestring,binary,mtl,containers,unix,utf8-string,zlib,HsSyck,filepath,process,syb,old-time,pretty. and editline ?
For me it fails to build on Fedora 20 with the readline package but completes with editline.
Krzysztof: maybe try removing or hiding the readline package or posting your build error. :)
Jens
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
Thanks for the link on development, somehow I missed that.
The patch works great, correctly detects that the instance is already
there.
After installing few other tools (as well as libwww-perl Arch package) and
switching back to GHC 7.6.3 I was able to successfully run:
~/sandbox/jhc-darcs/jhc/ autoreconf -i && ./configure
--prefix=`pwd`/installdir && make && make install
BTW.: I was also succesful in using a cabal sandbox for any libraries
involved. I simply created one with "cabal sandbox init" and changed a
line in configure.ac from
GHCFLAGS="-hide-all-packages -package base"
to
"GHCFLAGS="-hide-all-packages -package base
-package-db=/home/tener/sandbox/jhc-darcs/jhc/.cabal-sandbox/x86_64-linux-ghc-7.6.3-packages.conf.d"
I wonder if support for cabal sandboxes would be a welcome feature for
building jhc?
On Tue, May 13, 2014 at 3:01 PM, John Meacham
Just pushed a patch that will only create the show identity instance if it is missing. If you could test it, that would be great. I assumed if it existed it would come from Control.Monad.Identity, perhaps that is not true though. Also fixed some other #ifdefs that depended on GHC version numbers to use proper HS_HAS_INSTANCE checks.
The docs for development mention the requirements for using the darcs tree.
http://repetae.net/computer/jhc/development.shtml
the prerequisites are a little out of date though. that doc is part of the repo in docs/development.mkd
John
autoreconf -i
-i installs anything needed that is missing.
John
On Tue, May 13, 2014 at 4:06 AM, Krzysztof Skrzętnicki
wrote: I tried to compile from darcs repo, however I am unable to even run ./configure. 'autoreconf' returns an error:
autoreconf configure.ac:17: error: required file 'ac-macros/compile' not found configure.ac:17: 'automake --add-missing' can install 'compile' configure.ac:13: error: required file 'ac-macros/config.guess' not found configure.ac:13: 'automake --add-missing' can install 'config.guess' configure.ac:13: error: required file 'ac-macros/config.sub' not found configure.ac:13: 'automake --add-missing' can install 'config.sub' configure.ac:5: error: required file 'ac-macros/install-sh' not found configure.ac:5: 'automake --add-missing' can install 'install-sh' configure.ac:5: error: required file 'ac-macros/missing' not found configure.ac:5: 'automake --add-missing' can install 'missing' parallel-tests: error: required file 'ac-macros/test-driver' not found parallel-tests: 'automake --add-missing' can install 'test-driver' autoreconf: automake failed with exit status: 1
I don't know how to proceed.
On Tue, May 13, 2014 at 11:56 AM, John Meacham
wrote: I modified it so all packages depended on are listed in only a single spot in the configuration to make it easier to change and give much better error messages. see the new http://repetae.net/repos/jhc/configure.ac and the NEEDS_PACKAGE macros.
Possibly existing instances are pretty easy to work around, see USE_MONOID_DOC in the config file. I'll make the show instance for identity conditionally defined too, since that seems to be floating around. Having to specify specific versions in the script would be hacky, much better to actually identify the reasons for incompatibility and choose based on that.
John
On Mon, May 12, 2014 at 10:36 PM, Krzysztof Skrzętnicki
wrote: Hmm, I'll give it a try, thanks! As for the other errors for sure there is missing Binary instance for strict ByteStrings in newest binary package. Another one is instance for Show (Identity a) which in turn needed
to be
commented out because it appeared in newer version of some other package, don't know which one. Lastly I get a lot of errors caused by mixing library versions. I *think* that the problem is that, unlike Cabal, the Makefile specifies -package foo without specific versions. The result is that, given the fact that I have more than 1 version of many libraries installed, it tries to build with two different versions of same library, or so would it seem: 1 is dependency of other library, the other is from -package specification. I think
On Tue, May 13, 2014 at 5:43 AM, John Meacham
wrote: this is the case. This is why I asked for specific versions of all the libraries involved. The idea was to simply specify *all* of them on command line and/or Makefile.
Right now I don't have time to replicate the errors, but I will try again building jhc later.
Best regards, Krzysztof
On Tue, May 13, 2014 at 5:09 AM, John Meacham
wrote: Yeah, there was a bug in the way it detected editline/readline which has been fixed in the repo.
You can run configure with --disable-line to work around it. or
change
the word USE_NOLINE to USE_READLINE in src/Util/Interact.hs
always some silly typo that works its way in somewhere. I should stop the version number shift and declare it 1.0.0 and use the third digit for actual point releases rather than keep the perpetual 0.x.y wasting the first digit. but then I can't hide behind the 'beta' shield anymore. :)
John
On Mon, May 12, 2014 at 7:56 PM, Jens Petersen
wrote: > Thank you for the new release. :) > > On 13 May 2014 04:40, John Meacham wrote: >> >> as for the packages i've been testing with >> >> >> >> >> fgl,regex-compat,bytestring,binary,mtl,containers,unix,utf8-string,zlib,HsSyck,filepath,process,syb,old-time,pretty. > > > and editline ? > > For me it fails to build on Fedora 20 with the readline package but > completes with editline. > > Krzysztof: maybe try removing or hiding the readline package or > posting > your > build error. :) > > Jens > -- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
-- John Meacham - http://notanumber.net/
On Tue, May 13, 2014 at 7:48 AM, Krzysztof Skrzętnicki
I wonder if support for cabal sandboxes would be a welcome feature for building jhc?
What would that entail, would a --with-cabal-sandbox "sandboxconf" option to configure that is passed to -package-db do? That is easy enough to add if it will be helpful. John -- John Meacham - http://notanumber.net/
participants (2)
-
John Meacham -
Krzysztof Skrzętnicki