Results 1 to 6 of 6

Thread: Installing SSH on Solaris 8

  1. #1

    Exclamation Installing SSH on Solaris 8

    Here's the question...

    I am trying to install Open SSH on Solaris 8 and am getting the following errors. I was wondering if anyone could help? Here goes:

    I have uncompressed the .tar.gz file and exported all the files to a certain directory. I have cd'd to that directory and entered the following commands:

    $ ./configure

    When logged in as my user name I recieve the following errors:

    checking for gcc...no
    checking for cc...cc
    checking for C compiler default output...configure: error: C compiler cannot create executables.

    When logged on as root I get these set of errors:

    checking for gcc...no
    checking for cc...no
    checking for cc...no
    checking for cl...no
    configure: error: no acceptable cc found in $PATH

    This is as far as I get. I am totally lost and am not a guru when it comes to Unix. If anyone can offer some advice, tips, whatever, I would be ecstatic. Thanks.

    -The Eeshman

  2. #2
    PHP/PostgreSQL guy
    Join Date
    Dec 2001
    Posts
    1,164
    It seems like you have no compiler by what the error messages report.

    $PATH is what is looked through by the shell whenever something is executed. It sorts through $PATH in the order of directories it has and the first one it finds, it would execute that one.

    Example (brevity):

    # echo $PATH
    /sbin:/bin:/usr/sbin:/usr/bin

    So if you had a file named 'foo' that echoed 'Hello World' when executed, and it resided in /bin, the shell would look through /sbin and not find it, and move to /bin, where it would find it, execute it, and you'd be seeing 'Hello World'.

    Now, to attempt to solve the cc problem, we need to search your directories to find 'cc'. Here's how you do that:

    # find / -name cc -exec ls -ld {} \; | awk '{ print $9 }'

    Now, that'll list the whole cc executable when it finds it, path and all. To add this path to your current shell session, do this (given the example path of /usr/local/bin as the directory for cc):

    # find / -name cc -exec ls -ld {} \; | awk '{ print $9 }'
    /usr/local/bin/cc

    Now, we know that cc lives in /usr/local/bin and now want to add it to our current session's PATH.

    # export PATH=$PATH:/usr/local/bin
    # echo $PATH
    (paths are listed here, with /usr/local/bin at the very end).

    Now, this export will only work for this shell and any forked processes, meaning you'll have to do it again if you exit out.
    In Redhat linux, there's a file called /etc/PATH that you can add stuff to but I'm not sure where it is in Solaris.

    Another thing that can help when finding known binaries. Use the command 'which' and that will tell you the first directory in your PATH has it. Otherwise, it'll message an error that it didn't find anything.
    We the willing, led by the unknowing, have been doing the impossible for the ungrateful. We have done so much with so little for so long that we are now qualified to do just about anything with almost nothing.

  3. #3
    Thanks a ton. I have added the directory in which cc resides, however, I now get the configure: error: C compiler cannot create executables.

    The Eeshman

  4. #4
    PHP/PostgreSQL guy
    Join Date
    Dec 2001
    Posts
    1,164
    Hmmmm, I know that if you're a regular user and you try to run ./configure in a directory that you can't write to, the compiler will complain about that. Unpack it into /tmp and try from there, or log into root and run ./configure as root. That should work.
    We the willing, led by the unknowing, have been doing the impossible for the ungrateful. We have done so much with so little for so long that we are now qualified to do just about anything with almost nothing.

  5. #5
    I'm logged in as root...that's why I am confused. It should work from there. Could it be a problem whith the compiler???

  6. #6
    PHP/PostgreSQL guy
    Join Date
    Dec 2001
    Posts
    1,164
    Another thing I noticed was that cl wasn't found. Not being too compiler-oriented (me that is), try the following:

    1: run the find command previously mentioned and replace cc with cl.

    2: export your path again with the directory that cl is in at the end.

    Hopefully that'll help fix it. cl might be the linker which is definitely needed to create executables.
    We the willing, led by the unknowing, have been doing the impossible for the ungrateful. We have done so much with so little for so long that we are now qualified to do just about anything with almost nothing.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •