On Sunday 04 February 2007 10:09, Rami Michael wrote:
Hello All,
I have been using Linux for a long time now but up until recently I never really did a lot of "configure make install" type builds for any of my boxes. As luck had it, there was an rpm available 99% of the time.
Recently, I have run into a lot of scenarios where I needed a newer version of something and I had to go through a manual build process. Currently, have 3 systems that are pretty much identical. So lets say I want a newer version of wireshark or a gnome-applet that suse does not have yet in a repo.
I would do the standard config make install procedure on all three boxes. I did notice that if the linux systems seem to be the same (ie. x86, i386) I can copy compiled binaries over to another box and I can use them there.
Here is where my questions begin :)
#1. Most of these apps have a lot of requirements when you build them, for example libpcap-devel or gnome-something-devel. I realized I do not need the "*devel*" rpms to be installed on the boxes i was compiling to. However, since there is no dependancy checking when I copy something over how can I know that the libpcap libraries actually exist?
Use the checkinstall program that will help you to build package for certain distribution. Later when you install package the package management software will take care of dependencies, than when you don't want them it is easy to get rid of them.
I assume my app will bomb out in the middle?
It can happen to break, but there is no siple rule. It depends what is installed, what versions of libraries, where is location of applications libraries and configuration files in the file system of specific distro.
#2. If I compile something on 586 openSuse will it work in 586 CentOS?
May or may not. See above.
Is this just not a smart thing to do?
It is not smart. It can be used as desperate move if you are out of time and not working application is the smallest of bad things that can happen to you.
Should you only copy between the same distro?
Same distro has release versions, updates, and it can happen that application doesn't work anyway, for the very same reasons that it will fail on another distro. If you know what to tweak, it can work, but simply compiling on one machine and then copy may produce strange results. If application refuses to run it is a simple bug that is announcing its presence very loud. It may work, but it may have some subtile bug that will produce bad results. Better compile on the system that program will run on.
#3. is there any way to keep track of the files installed?
See answer on #4. It is the same group of problems.
Or am I doing something findamentally wrong? Do I ./configure and make on one system and then do a make install on all of them?
The ./configure will check is it possible to compile application on particular system, so to avoid manual check or bad surprises, consider configure as machine architecture and software installation specific. So the basic answer is no, but see above #2.
#4. How does one easily uninstall stuff that is installed by these methods?
People spent substantial amount of time to create packaging systems and supporting applications with one goal in mind, to save time later and make applications management easier task. Why not to use them? If you are in need for brand new software check software repositories, like those listed on: http://en.opensuse.org/Additional_YaST_Package_Repositories Many people like you like/need to have the latest, and other that are skilled in package creation decided that is the best way to help others. They are making repositories where you can find newer versions of packages that are included in distro, and more programs that are not included for various reasons. -- Regards, Rajko. http://en.opensuse.org/Portal -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org