LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (http://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Where to find my installed rpms in Mandrake 9.1? (http://www.linuxquestions.org/questions/linux-newbie-8/where-to-find-my-installed-rpms-in-mandrake-9-1-a-83483/)

Spica 08-19-2003 08:47 AM

Where to find my installed rpms in Mandrake 9.1?
 
I'm relatively new to Linux (Mandrake) but I've been doing okay for most of the time.

Just this really (embarrassing) simple question: I installed some Mandrake 9.1 binaries, namely Winex and Gens (the Genesis emulator gone open source). Both were in rpm format, so I simply double-clicked on them. Both of them installed without errors.

Now here are my questions: where have they been installed? How can I run those programs?

Thanks

hfawzy 08-19-2003 08:58 AM

Welcome,
When you install an rpm package, the executable file is almost all the time on /usr/bin.
To run a program, just open a console and type the program name.
Tip : To get all files that an rpm package will install, type rpm -qpl <package name> in a terminal.
Good luck
hfawzy

oni0n56 08-19-2003 11:16 PM

yeah in linux... its not like windows where thes a file located in program files and you have to open it... kinda.. you can run it from terminal and it sends a command to open it or you can open it from icons [links/shortcuts] to the file.. if you click on the 'file' itll open the text code [but theres lotsa files normally] because its open source so everythings code but when you install it... it adds the information to all the important files so for example after you install xmms [though it normally comes installed ] you type xmms inside a terminal and itll open it because when you installed it it added some code inside all the files... etc etc .. well you get the picture... sorry for the lecture] and then basically your only option is to run it in a terminal/run prompt.. by typing the thing to run it... normally the program name or something [ beware... ITS CASE SENSETIVE.. evertyhing in linux is .. ] so you type winex in a terminal or the run prompt or you can make an icon/menu item that executes command: winex and labeled whatever you want... thers also a list somewhere... and normally they pop up inside the menu too [like K menu for KDE or startmenu for windows.. [that kinda menu..]] Well good luck mate!!

ilikejam 08-20-2003 01:34 AM

If you want to find where any executable is on Linux you can do

$ which <executable>

e.g
$ which winex
will tell you where winex is.

Spica 08-20-2003 02:01 AM

Thanks a lot
 
Both executables were indeed in the usr/bin directory. And they both worked perfectly. The ' which' command will be helpful in the future! Thanks for the help!

bigjohn 08-20-2003 03:51 AM

You can also use the "whereis" command - I think you will find that it does the same thing.

regards

John

oni0n56 08-20-2003 01:07 PM

i see..

oni0n56 08-20-2003 01:08 PM

can you use which to find all the executable files that exist?.. or is there a command to that extent? so like you nkow all the programs you have existing on your comp..

hfawzy 08-20-2003 04:09 PM

the which command searches for all executable files in the directories listed in the environment variable PATH. so if all your programs are located in a directory listed in the PATH env variable, this command will let you know if the given program is installed on your system..
regards,
hfawzy

oni0n56 08-20-2003 06:02 PM

thanks hfawzy :) ... so you mean if i go to the root dir and type 'which' itll show all of them?

jschiwal 08-20-2003 08:31 PM

Actually, the which command runs from within the shell and that tells you location of the command that would run if you had typed it in. Some commands are integrated into the shell and these will run by default rather than the same command in /bin for instance.

The whereis command looks up the location its database, and may not be updated if you are looking for a new file.

If you installed new software, different components may be installed in different places. The command you want to use is the find command.

find / -cmin -10

The above command will locate all files created within the last 10 minutes.

Jongi 08-21-2003 03:22 AM

What if you extract a tar.gz and run a configure or install.sh from that directory. Will these files also be in usr/bin? I assume the rpm -qpl won't work in this circumstance? Also how do you then uninstall said program(s).

hfawzy 08-21-2003 05:01 AM

When you run configure, all newly created files (Makefiles...) are added in your current working directory. But when you run make install, executables usually go in PREFIX/bin, config files in PREFIX/etc, man pages in PREFIX/man, icons in PREFIX/share/icons etc...

Note that the default prefix when you install a program from source is /usr/local and when you install an rpm package, the default one is /usr.

When installing a software from source you can change the prefix by adding --prefix to the configure script. For instance if I want to install a program on /opt/foo, I run "./configure --prefix=/opt/foo", then make and make install . In this directory will be added a "bin" directory that will contain executables, a "share" directory ...

regards,
hfawzy

secprovider 08-21-2003 05:34 AM

Hi,

Another possiblity to find out where the files have been installed is

rpm -q -l package.rpm

hfawzy 08-21-2003 05:34 AM

Quote:

Also how do you then uninstall said program(s)?
If you compiled/installed from source you may be able to uninstall by entering the source directory and typing make uninstall. Not all apps include this target, but if it is present it's probably the best solution. You may still have to eliminate some config files afterward.
I recommend you to download the checkinstall program from http://asic-linux.com.mx/~izto/checkinstall. This program will let you build your own rpm package from the tarball you downloaded. This is good because if you want to uninstall the program you built and installed using checkinstall, just type "rpm -e <program name>" and this will delete all program files.


All times are GMT -5. The time now is 04:42 AM.