Can not install / run gcc in 12.1.

Hi all,
I have just installed openSUSE 12.1 from the live GNOME CD image(660 MB approx.). Surprisingly it does not contain GCC… well anyway… I got the GCC RPM and tried to install it. After resolving a few dependencies (like linux-kernel-headers and binutils etc.) I managed to install GCC (or atleast seems so) but the problem is that gcc is not working.

linux-z8rx:/home/vc/utils # rpm -Uvh gcc46-4.6.2_20111026-1.1.4.i586.rpm
Preparing… ########################################### [100%]
package gcc46-4.6.2_20111026-1.1.4.i586 is already installed
linux-z8rx:/home/vc/utils # gcc
If ‘gcc’ is not a typo you can use command-not-found to lookup the package that contains it, like this:
cnf gcc

Is it because gcc has been installed somewhere which is not included in $PATH?
Where am I going wrong? I really need gcc to work. Please suggest.
Thanks.

> Where am I going wrong?

first: welcome new poster!

you not doing anything wrong…unless being born without perfect
knowledge of all the various linux distros is “wrong”…

i don’t think imperfect knowledge is ‘wrong’, and i’m sure the knowledge
gap is correctable… here are a few steps in that direction:

  1. openSUSE install media has not included gcc (and other development
    software) for a few years now.

why? because a large majority of our users are just that (users and not
developers)…so i hear you saying: then how the heck do i build the
packages i need? and the answer is in the next knowledge gap:

  1. gone are the days (around this distro) where it is routine to drag
    the net looking for a source package (or an rpm); download it and run
    some command line magic to build and install (or rpm in) an application!
    today we just follow a path like this:
  • open YaST
  • select Software > Software Management
  • it opens to a search blank, normally just type into it (like ‘midnight
    commander’)
  • single left click the (mc) package to add a green check mark
  • click “Accept” and watch…DONE

developers have a just slightly different first time:

  • open YaST
  • select Software > Software Management
  • it opens to a search tab, select the “Patterns” tab
  • scroll down to the “Development” section (and expand it if necessary)
  • single left click on “Base Development” and “C/C++ Development”
  • click “Accept” and watch…DONE

YaST normally resolves all dependencies (or throw you a message saying
it can’t find the dependencies in the repos you have enabled, and tells
you what is needed

and, it normally puts all the bits in the right places–which brings me
to a question: Why did your “# rpm -Uvh gcc[blah].i586.rpm” command
install gcc into your home directory? shouldn’t it be in a /bin
somewhere???

i can only guess you became root with su, which keeps your user’s
environment [use “su -” to take on roots environment] AND/OR the gcc rpm
you found and ran the rpm command against had not been packaged by
someone knowing openSUSE…that is to say the
http://download.opensuse.org/distribution/12.1/repo/oss/suse/x86_64/gcc-4.6-15.1.3.x86_64.rpm
which will be installed by YaST from the openSUSE repos will not land
in your home…

i’d say you will be ahead if you use an rpm -e (erase) against that
downloaded gcc before installing it via YaST

finally, if you like the CLI (and yum or apt) better than the YaST GUI
you are gonna love zypper…

OH! i just notice the rpm you installed is for a 32 bit machine…i
assumed you had a 64 bit system when i plucked the one i thought YaST
would install…so i guess it would be:
http://download.opensuse.org/distribution/12.1/repo/oss/suse/i586/gcc-4.6-15.1.3.i586.rpm

if you are coming to us from Ubuntu (or another Debian flavor) you might
zoom up your knowledge gap with these:

http://tinyurl.com/ubuntu-to-openSUSE
http://tinyurl.com/Ubuntu-Differences

and no matter what your experience in *nix-like you will probably find
lots of useful info in:

http://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/new-user-how-faq-read-only/424611-new-users-opensuse-pre-install-general-please-read.html

http://forums.opensuse.org/english/get-technical-help-here/how-faq-forums/new-user-how-faq-read-only/467087-new-users-opensuse-12-1-pre-installation-please-read.html

please don’t get confused by the titles including of “new user” and
decide not to read…if you have 30 years experience with *nix and are
new to openSUSE you will find gaps being filled.

again, welcome.

OH, last: your question has been asked and answered numerous times and
you might (sometimes to often) find your answers faster with a finely
honed google search using their “site specifier” like:
https://www.google.com/search?q=site:forums.opensuse.org+gcc+OR+make+missing+OR+“not+installed”


dd http://tinyurl.com/DD-Caveat

if your manual installation installed it somewhere funny (not sure i buy that though), then it may be outside your path. issuing a: which gcc, perhaps even as root, gives you nothing?

i’d give suse’s package manager a go: sudo zypper install gcc

kill your manual gcc install first.

On 07/27/2012 08:56 AM, mr0z wrote:
> [snip]

great post! really good help…

-=welcome=- new poster, hang around…please…


dd

On 2012-07-27 07:36, babon wrote:
>
> Hi all,
> I have just installed openSUSE 12.1 from the live GNOME CD image(660 MB
> approx.). Surprisingly it does not contain GCC…

:slight_smile:

The live CDs do not contain it because of the limited space available. The install DVD might
contain it, I don’t remember.

> well anyway… I got
> the GCC RPM and tried to install it. After resolving a few dependencies
> (like linux-kernel-headers and binutils etc.) I managed to install GCC
> (or atleast seems so) but the problem is that gcc is not working.

I wonder how you installed it, because having dependency problems is absurd if you use the
proper tools :slight_smile:

You simply fire up the yast package manager, go to patterns, and select the basic development
pattern. That will install gcc, all dependencies, and all auxiliary packages you need, like
basic headers, libraries, the make utility, etc.

Or, if you prefer CLI, you can use zypper - only that I do not remember the exact name of the
pattern to request. I think it is:


zypper in -t pattern patterns-openSUSE-devel_basis

(hint: I used “zypper -t pattern se gcc” to find out)

(If the above command does not work, it has a man :wink: )


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

thanks… i believe it was the stripped down version of your post :slight_smile:

Thanks everyone for the replies :slight_smile:
I should have mentioned this earlier… I can not access the internet from my openSUSE machine (due to some very serious issues) so these package managers (yast, zypper etc.) are of no use to me. To use any package manager I need a repository from where I can download, it seems that I will have to download that mammoth 4.something GB DVD image… or is there another solution?
Please help.
Thanks.

If downloading is a problem, you can order the DVD. This isn’t free, but there are some extras and you’ll be making a contribution to the project. :slight_smile:

Buy openSUSE - openSUSE

On 2012-07-27 18:56, babon wrote:
>
> Thanks everyone for the replies :slight_smile:
> I should have mentioned this earlier… I can not access the internet
> from my openSUSE machine (due to some very serious issues) so these
> package managers (yast, zypper etc.) are of no use to me.

Ahhh! That is indeed a problem, because the distro is not designed for that use case.

> To use any
> package manager I need a repository from where I can download, it seems
> that I will have to download that mammoth 4.something GB DVD image… or
> is there another solution?

Download the repos you need to an external disk from somewhere where you get access. Then you
put the disk on the internet-less machine. This can be done on setups where you have internal
isolated machines, and a few machines with internet connections.

A feature that you would need is a method of producing the list of files you require, and then
download only that list on another machine. But this does not exist, AFAIK.

Years ago (with SuSE 7.1…3) I kept a system offline. I downloaded the updates at home, and
installed them at the job site. SuSE published a web page with the updates they made, with
dates and holes they plugged. It was easier, except for the transport media: floppies.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

Thanks everyone. :slight_smile: