It appears that the Makefile
provided with the csh
source package uses some (possibly BSD-derived) features that are not supported by GNU make
, which make building it on an Ubuntu system challenging. An easier alternative is probably to build the tcsh
package
DESCRIPTION
tcsh is an enhanced but completely compatible version of the Berkeley UNIX
C shell, csh(1).
If your system's administrator has enabled the necessary source repositories, it may be possible for you to download and patch the source automatically using
apt-get source tcsh
which shouldn't require sudo
as it will download into to the current directory. If that's not possible, then the source for the tcsh
package should be available via git
from git://git.debian.org/git/collab-maint/tcsh.git
Once you have the patched source, enter the top-level directory and configure it to build in your home directory e.g.
./configure --prefix=$HOME
This will cause the tcsh
binary to be installed in $HOME/bin
, which is likely already in your PATH. You can specify a sub-directory under $HOME if you prefer, or anywhere else that you have write and execute permissions, but you will need to make sure that directory is also added to your PATH. If that all goes well, then
make install
Finally, you may need to create a symbolic link from tcsh
to csh
in order for other programs to find it as the default csh
implementation e.g. assuming you installed to $HOME/bin
ln -s tcsh ~/bin/csh
.if ... .endif
construct which doesn't seem to be supported by GNU make - you may have better luck buildingtcsh
instead. Also, tryapt-get source tcsh
(which doesn't need sudo) - if the source repositories are enabled that will be easier than manually downloading an patching. Then./configure --prefix=$HOME
andmake install
in the patched source directory. You may need to make a symlink from$HOME/bin/tcsh
tocsh
. – steeldriver Jun 05 '14 at 04:24