ColdFusion 5 on openSuSe 10.2

by marcus on 23/03/2007



Yesterday evening, a friend of mine asked me if I know how to install ColdFusion 5.0 on a up-to-date openSuse system. After some fiddling around, I indeed found a way to get it running, but let’s start from the beginning:The main problem is: it simply won’t run out of the box because of the following facts:

-openSuse comes with a 2.2.x Apache
-The apache module shipped with CF is for Apache 1.3.x only
-Adobe offers a 2.0.x module, but no 2.2.x one
-Nextron.ch has a custom built 2.0.4x module that also won’t run on 2.2.x Apaches

So finally, I decided to manually compile the latest 1.3 Apache (1.3.37, wohoo! 1337!), which at least swallowed the standard module shipped with CF. So far, so good, next problem:

-CF refused to start

Well, it wasn’t exactly /bin/cfserver that didn’t start, it was the “start” shell script that fires /bin/cfexec returning “/opt/coldfusion/bin/cfexec: error while loading shared libraries: libdl.so.2: cannot open shared object file: No such file or directory”.

Guess what, assuming that you can trust ldd, the libraries were all there:

ldd cfexec
linux-gate.so.1 => (0xffffe000)
libcfdataaccess.so => /usr/lib/coldfusion/libcfdataaccess.so (0xb7f2b000)
libporting.so => /usr/lib/coldfusion/libporting.so (0xb7ea2000)
libdl.so.2 => /usr/lib/coldfusion/libdl.so.2 (0xb7e9e000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb7e7c000)
libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-libc6.1-1.so.2 (0xb7e33000)
libm.so.6 => /lib/libm.so.6 (0xb7e0d000)
libc.so.6 => /lib/libc.so.6 (0xb7cdf000)
/lib/ld-linux.so.2 (0xb7fba000)

So after some pointless trying and debugging (the error message led me into a totally wrong direction), I noticed that the start script does this…

ENV_LIST=”$ENV_LIST LD_ASSUME_KERNEL=2.2.5″

…which reminded me of a SLES10/CFMX7 install I had to do lately. Those of you who ever had to install CFMX7 on a SLES10 machine know that you need to “patch” the installer file by commenting out the “export LD_ASSUME_KERNEL” line inside, so I gave it a try:

ENV_LIST=”$ENV_LIST” #LD_ASSUME_KERNEL=2.2.5″

…and bingo, CF starts.

To sum it up:

-Preferably use a 1.3 or 2.0 Apache
-Install CF as usual
-Change {cfhome}/bin/start as stated above

Easy if you know it, but a pain to figure out 😉

Dan Wilson March 23, 2007 at 12:00 am

Yes, that sounds very interesting and very frustrating.

Kudos to you for figuring it out.

Dan Wilson

Tom Chiverton March 23, 2007 at 12:00 am

Other options include using a virtual machine (VMWare / Xen / the para-virtualisation stuff in newer kernels), or using Apache or Squid as a proxy to the built in CF server rather than rebuild the connector.

Ian Sheridan March 23, 2007 at 12:00 am

That’s all fins and dandy but… CF5?! geeze hehe

btw thanks for the heads up on the pitfalls in installing 5 on SUSE

Comments on this entry are closed.

Previous post:

Next post: