Hello Bryan,
problems with library dependencies are pretty common on linux and bsd. The way
those systems culture were built, it´s pretty common for a developer to link
against shared libraries that you may or may not have. Usually this issue is
solved by distributing the software in source format with autogen tools that
will generate the instructions for that software to compile on your machine
with the libraries you have but then again, when you upgrade a library,
depending on which path you took to upgrade it, all hell breaks loose.
Revolution and some other tools that are being distributed in binary format
suffer from worse problems, since we can´t modify the library reference on the
executable application (IIRC) our only hope is to have the correct libraries.
This happens all the time with the linux engine linking against ancient libC.
One thing in favor of Rev is that is doesn´t link to any esoteric library, it
just link against some pretty common ones, like Standard C Library (just like
everyone), some GTK libs I think and other common stuff. So the problem is not
missing the libraries, the problem is wrong version of the library or wrong
location. One hack that can save you is to make symbolic links from the library
reference that revolution is looking for to the library that you know you have.
In your case you could have done a link like:
libstdc++.so.3 - libstdc++.so
After that and praying to the Gods of Backward Compatibility, your software
might just work(tm). Somtimes I wish all software was linked statically.
When RunRev Team releases updated engines for Linux and BSDs, I hope they link
against stub libraries such as libstdc++.so which is always a link to the
current standard c++ library installed, this would solve many problems.
Since now you´re building CGIs, you might want to check my little RevOnRockets
package which is located at:
http://andregarzia.com/RevHTTP.zip
my site content is down, but the files are being served. This package is a
little web server built with rev and some libraries for cgi development and
examples. You can use it to learn more or to debug your own cgis from inside
rev ide before deploying them on live servers. One very cool thing is EasyDebug
library which will pick errors from try/catch block and build full html reports
detailing the error and even show you the line in the source that has that
error. All for free.
Be welcome to the wonderful (and sometimes difficult) world of Rev CGI
Development.
Cheers
andre
On Thursday, April 19, 2007, at 01:32PM, Bryan McCormick [EMAIL PROTECTED]
wrote:
Andre,
Thanks for the quick response. The CGI tutorial was indeed excellent. It
does turn out BSD has a 2.2.1 version of the engine going.
One thing my ISP noted is that there were some odd problems with the
libraries used when the BSD version was compiled. This is not my thing
but I am putting it out there so folks will know. Otherwise you can do
everything right and end up hitting your head against 500 errors. They
were nice enough to upload libs for backwards compatibility to the
server so now it is working. Here is the note:
-
The problem is your engine was compiled for FreeBSD 4, but you're on
FreeBSD 5.
su-2.05b$ ./revolution
/usr/libexec/ld-elf.so.1: Shared object libstdc++.so.3 not found,
required by revolution
su-2.05b$ locate libstdc
/usr/lib/libstdc++.a
/usr/lib/libstdc++.so
/usr/lib/libstdc++.so.4
If revolution was compiled to use libstdc++.so instead of
libstdc++.so.3, then it should be more portable between FreeBSD
versions. I wouldn't recommend compiling against libstdc++.so.4 either
because if you ever move your website to a newer server, or if the
server is ever upgraded, it will definitely break.
All that said, I installed some downward compatibility libraries, so the
script runs now.
---
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
___
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution