LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   software management - best practices? (https://www.linuxquestions.org/questions/linux-software-2/software-management-best-practices-189493/)

curmudgeon42 06-03-2004 09:02 PM

software management - best practices?
 
i have newly switched to Linux (using Mandrake 10). i dove right in to compiling programs from source, using RPM packages, installing wine and running Windows programs, etc. for the most part, I have had a lot of success. i am able to do most things in Linux that I used to do in Windows, and I feel that in a couple of months it will all be second nature to me like it was in Windows.

my question has to do with managing all of the installation and configuration that goes into getting the OS to have the right software, etc. i have been compiling some things from inside my home directory, and then these things (wine, for instance) install to who-knows-where. i have been putting some pre-compiled packages into /opt/ or /usr/share/ in pretty much a random fashion. i have been using RPMs sometimes as well.

i feel like i have, for the large part, lost control of my filesystem, my config, what i have installed, etc. i think that once i get the hang of linux, figure out what programs i need to run, and what configuration options i want to use, i am going to reinstall Mandrake 10 from scratch and do everything again in a more controlled fashion. are there any articles out there or general feelings on the best practices for managing all of this stuff?

thanks for the help

~ Justin

TheOneAndOnlySM 06-03-2004 09:12 PM

most programs compiled from source will install into the /usr/local area

at first, it seems things installs into random locations, but eventually you will see there is a pretty cool method that goes with it

/bin usually contains programs that are just basic necessities for running linux
/sbin is the superuser equivalent

/lib usually contains libraries that are bare necessities

/usr/bin usually contains programs that are precompiled and/or come with your distro
/usr/sbin is the superuser equiv

/usr/lib contains other libraries important to run what your distro installs

/usr/local/bin usually contains programs you generically compile with ./configure
/usr/local/sbin is the superuser equiv

/usr/local/lib.... you get the idea


just realize that for pretty much any program/library you install will install to their respective necessary paths in /usr or /usr/local.... you can do "which command" to see where it is located, and if it has any other files, it will most likely be located in $PREFIX/lib or $PREFIX/include, etc

for example, wine will install its binaries into /usr/local/bin, (so $PREFIX is /usr/local); the libraries get installed into /usr/local/lib, etc.


*edit: if by control you mean package management, you can build from source and then use tools like checkinstall to build packages that will tell you exactly where everything installs, and is a handy reference for uninstallation

also, many sources come with the ability to do make uninstall, so if you want to delete wine after deleting the source, just redownload the same version's source, run configure with the same options, and issue make uninstall


All times are GMT -5. The time now is 09:18 AM.