The default path for the root account on Solaris 10 is
/usr/sbin:/usr/bin
. But the make utility is in
/usr/ccs/bin/
. If you get the error "make: not found"
when you attempt to run make
, you will need to adjust the path
or specify it when you run the make
command.
You can view the default path with echo $PATH
.
# echo $PATH
/usr/sbin:/usr/bin
You can use /usr/ccs/bin/make
to run the make
command, or you can add the directory that holds the make
command to the end of the existing path with
PATH=$PATH:/usr/ccs/bin
.
Make needs a C compiler to compile the source code.
Sun would prefer to sell you one, so you may not have one on your
system. If you run make
and see "cc: not found",
then you don't have a C compiler on the system or make
can't
find it.
If instead, you see "language optional software package not installed", then
the directory /usr/ucb is in your path. That directory holds a script named
cc, which is the name for the C compiler, but it is pointing make
to a location where the C compiler doesn't actually reside. Again, you either
don't have a C compiler or make
can't find it.
# /usr/ccs/bin/make
cc -Wall -Werror -g -c pldstr.c
/usr/ucb/cc: language optional software package not installed
*** Error code 1
make: Fatal error: Command failed for target `pldstr.o'
If you have Solaris 10, you should have the Gnu C compiler, gcc, in
/opt/sfw/bin
. If so, you can set up a symbolic link
to point to it as shown below.
# ln -s /opt/sfw/bin/gcc /usr/bin/cc
If you don't have gcc, which is free, on the system, you can get it from sunfreeware.com or gcc.gnu.org.
References:
-
Solaris Forums - What is "language optional software package not
installed"???
March 31, 2001 -
Various problems with building anything under Solaris, especially "/usr/ucb/cc: language optional software package not installed".
By: Alan J. Rosenthal
June 15, 2004