Mike Jackson wrote:
On Dec 22, 2007, at 1:00 PM, Bill Hoffman wrote:
Mike Jackson wrote:
Install textmate, open a terminal and type 'mate new.txt' and
Textmate will open a new text document titled "new.txt".
Try 'grep -R "something" * | mate" and watch your grep results show
up in a new TextMate document.
Textmate is a Drag and Drop install. It has combined cli and gui. How
is this different than cmake?
So, how does it work? Where is mate installed? I have one simple
requirement:
1. you install cmake
2. you can run it from the command line, or from the gui without
modifying additional things.
I don't think that is too much to ask. If the user has to edit
.profile or something else, I don't think it is acceptable. I will
get complaints, "I installed cmake, and I run cmake and it says file
not found." Saying that cmake is for developers is not true. People
use CMake to build things like ParaView. They may not be developers
at all, they just want to build some open source tool.
The crazy part, is that there is almost no direction from Apple on
this. I searched and searched but was unable to find any docs on
this from Apple. If someone could point to some direction from Apple
on this I would appreciate it. At this point, we can find some apps
installing in /usr/bin and others installing in other places. But, I
really don't care where it goes as long as my two conditions are met.
I certainly have not found any thing from Apple saying please do not
install into /usr/bin. Of course if it is going to require changes to
CPack, it will have to wait for 2.6. I am open to suggestions, I just
have a requirement, which I don't think is unreasonable.
-Bill
Bill, your requirements are NOT unreasonable at all. I agree that the
lack of direction from Apple is a problem on this. All my posts and
opinions come from using OS X since the Public Beta (10.0.0) days and
seeing what types of things can happen when Apple updates the system.
Does any of this really effect me personally NO, I just build CMake and
install where I want. I was just trying to add my personal experience to
the mix to help out.
Now regarding TextMate. It is a Drag and Drop install. I have mine in
/Applications/UniversalBinary. You launch Textmate normally and the
first time it launches it will ask you if you would like to install
symlinks in one of several locations that link back to Textmate's
application bunndle (See attached images). If you move Textmate and need
to reinstall the symlinks you can use the "Help" menu in Textmate to
reset the symlinks. I can imagine something similar to this for CMake.
Drag and Drop to install, launch it at least once and let the user
select where to put the symlinks, the default being /usr/bin (That way
it will stay on the path). The rest of us can select /usr/local/bin or
where ever else we want it.
Since this is dependent on the CMake gui then this will have to wait for
2.6 to be released. In the mean time you can just keep doing what you
are doing now. I don't think you can let the user select where to
install it because my guess is that in the cmake code there are
dependencies on the installation path so cmake knows where to find all
of its modules.
Actually, no, cmake works all relative to where it is installed. So, we
might be able to modify the installer to allow the user to pick a
destination, with a warning that it should be in the PATH, but the
default will stay /usr/bin.
So, in summary, for 2.4.8 continue doing what you have done in the past.
(While I disagree, there are better things to come in the future).
For the 2.6 release let's look at using a Drag-and-Drop installation
routine with symlinks setup by the Qt based gui, at least for OS X. If
you would like to point me to some places in the cmake code that depend
on the installation path, or at least where cmake is installed I can
starting hacking on it to see if I can get the needed functionality in
place.
I am still not sold on this idea, that you have to run the GUI once.
CMake by nature and history (did not even have one on the mac), did not
require running anything after installation. TextMate is an editor,
people will run it after they install it. With cmake, people may want
to run ccmake or just cmake without ever touching the GUI. They may
never ever run the GUI, and still expect stuff to work. I don't think a
functioning command line can depend on the GUI running at least once. I
still don't see the reason for the strong resistance to using an
installer program. Many Apple products including Xcode use one.
-Bill
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake