(First: I'd consider myself sudo-adept with Linux, just not RPM systems, I'm not asking how to install things from source here)
On a RPM (CentOS 4) system, I'm curious what I would need to do (RPM-wise) to install all of these from source myself.
In other words - I know that if I installed my own Apache from source, it would break mySQL/PHP and anything else that "looks" for Apache when you install an RPM. What else would it break that I would need to install myself? All I really plan to use is Apache, mySQL, PostgreSQL, PHP. But I'd like to know if I'm missing anything that having no Apache-RPM would break.
Also, I'm not used to RPM-based systems, is there a clean/easy way to build my own RPM? Should I build my own RPM, or is it considered ok to just install and drop the files in their locations.
I'm mostly concerned about updating later (I realize I will be doing this by hand) - if I do a "make install" now and later upgrade PHP, and do another "make install", that certainly seems like a sloppy way to go about things, I could be leaving cruft and even worse, bad conf files behind.
Just looking for advance on building from source on RPM-based systems, more or less.
Honestly, don't waste your time, you'll just make maintenance much more difficult own the road. If you have a legitimate reason to build all of your parts from source (i.e. custom software plugins, core modifications), the last step of your build process should be an 'rpmbuild.' By this I mean if you roll your own code, roll your own packages to go with it.
You can make it all work, if you want. I've done it 1000 times. There are "readme" files that come with each component.
The update process varies depending on package. Sometimes the best thing to do is just another 'configure && make install', other times, you'll need to be more careful.
At one point in time, I had 60 or so systems that were all built using custom shell scripts (they were Red Hat 6.x machines, I believe). The majority of the machines we had were all 7+ and RPM based. The majority of our time during an upgrade was spent on building/testing/QA of the custom builds we needed to do to support the older systems.