
On Saturday 16 Apr 2005 9:10 am, Niklas Broberg wrote:
Can someone tell me what I have to do to install the executables in the current directory or my home directory and also set the permissions (and ownership) to be that of the installer?
Give the flag --prefix=/my/chosen/dir when you run ./Setup configure, that will put the executables in /my/chosen/dir/bin. Very handy. =)
/Niklas Niklas,
Thanks for this. It doesn't quite do what I want. I want the executables in /my/chosen/dir/bin but the library to be in /usr/local/lib rather than /my/chosen/dir/lib. Actually now I think about it, what I really want is for the user of the package would build it, test it and then install it. The executables are actually tests and examples. I'd like the installer to be able to run the tests locally and then, if they are happy, install it. I suppose a solution is: 1. ./Setup configure --prefix=/my/chosen/dir ./Setup build ./Setup install --user 2. Run the tests in /my/chosen/dir/bin 3. ./Setup unregister --user ./Setup clean ./Setup configure ./Setup build ./Setup install One final thought: why is there no uninstall? Dominic.

I want the executables in /my/chosen/dir/bin but the library to be in /usr/local/lib rather than /my/chosen/dir/lib.
With "ordinary" configure scripts, you can finetune installation using flags like --libdir, --bindir, --includedir etc. This doesn't seem to work with Cabal just yet, but I don't think there are any reasons why it shouldn't be implementable. Feature request? =)
One final thought: why is there no uninstall?
I've requested it too, and the simple answer was because no one's implemented it yet. /Niklas

Niklas Broberg
I want the executables in /my/chosen/dir/bin but the library to be in /usr/local/lib rather than /my/chosen/dir/lib.
With "ordinary" configure scripts, you can finetune installation using flags like --libdir, --bindir, --includedir etc. This doesn't seem to work with Cabal just yet, but I don't think there are any reasons why it shouldn't be implementable. Feature request? =)
I don't see any problem with this, except that there will be a lot of configure flags if we keep this up. That's typical for configure, though. Also, of course, it adds more complexity to the source.
One final thought: why is there no uninstall?
I've requested it too, and the simple answer was because no one's implemented it yet.
Uninstall is also a little funny because in order to use it you have to have the cabal-ized source package around somewhere, and cabal doesn't install it. That said, there's no really deep reason not to have it. I filed wishlist bugs for both of these against the debian package haskell-cabal, which is where i'm keeping but reports. peace, isaac

On Saturday 16 Apr 2005 8:57 pm, Isaac Jones wrote:
One final thought: why is there no uninstall?
I've requested it too, and the simple answer was because no one's implemented it yet.
Uninstall is also a little funny because in order to use it you have to have the cabal-ized source package around somewhere, and cabal doesn't install it. That said, there's no really deep reason not to have it.
What I meant was cabal taking things out of places it puts them. If I've downloaded a source somewhere I wouldn't expect cabal to remove that. For example if /my/chosen/dir/bin now contains the executables put there by cabal: ./Setup configure --prefix=/my/chosen/dir ./Setup build ./Setup install --user then I would expect ./Setup uninstall to remove those executables from /my/chosen/dir/bin.
I filed wishlist bugs for both of these against the debian package haskell-cabal, which is where i'm keeping but reports.
Thanks.

Dominic Steinitz
On Saturday 16 Apr 2005 8:57 pm, Isaac Jones wrote:
One final thought: why is there no uninstall?
I've requested it too, and the simple answer was because no one's implemented it yet.
Uninstall is also a little funny because in order to use it you have to have the cabal-ized source package around somewhere, and cabal doesn't install it. That said, there's no really deep reason not to have it.
What I meant was cabal taking things out of places it puts them. If I've downloaded a source somewhere I wouldn't expect cabal to remove that.
Right, I understand. What I mean about not installing the source is this: today you download and install the package, and put the source in /usr/local/src or something. Now in 3 weeks you want to install a new version. Well, you might like to run uninstall with the new source, but that's not necessarily going to work, since it doesn't even know how you configured the source package. So the right thing to do is to go into /usr/local/src/pkg and run ./setup uninstall there. So you just have to remember to keep the old source around and go and run uninstall when you want to. But I thought maybe this something that a layered tool should do. Cabal-get (the client-side tool for Hackgae) might download the source into /usr/local, keep track of the source packages it has swallowed, and do the job of uninstalling. So we left it unimplemented until we get a better idea of what cabal-get will look like. peace, isaac

Isaac Jones wrote:
Niklas Broberg
writes: With "ordinary" configure scripts, you can finetune installation using flags like --libdir, --bindir, --includedir etc. This doesn't seem to work with Cabal just yet, but I don't think there are any reasons why it shouldn't be implementable. Feature request? =)
I don't see any problem with this, except that there will be a lot of configure flags if we keep this up. That's typical for configure, though.
Yes, this is really a must-have feature: it isn't possible to use setup properly with x86_64 Fedora currently for example, since 64bits libs should be installed under /usr/lib64 there for example.
I filed wishlist bugs for both of these against the debian package haskell-cabal, which is where i'm keeping but reports.
Thanks. Jens
participants (4)
-
Dominic Steinitz
-
Isaac Jones
-
Jens Petersen
-
Niklas Broberg