It took some effort to get frobtads installed on CentOS 5 since bits of that platform are very old and the clues I needed were widely scattered. However, CentOS 5 will be supported for a couple more years and still seems to be the default on cheap VPS’s, so I thought I would document some of the problems/errors and solutions. I was not able to find an rpm for a recent frobtads (1.2.3) that worked for CentOS 5 and because of curl (see below), I don’t think that a .rpm is a complete solution.
(So, of course, I downloaded the latest tar of frobtads; typed “tar -zxvf frobtads…”; typed “cd frobtads…”; typed “./configure”)
First, I had to apply the fix to “src/osfrobtads.h” described here: [url]https://intfiction.org/t/building-frobtads-1-2-2-errors/4997/1] (about adding #include <stdarg.h>).
Second, I also needed to manually edit the Makefile after running ./configure and add " -march i686" to CXXFLAGS to avoid an error about “undefined reference to__sync_add_and_fetch_4’”. Actually, I first added this to CFLAGS and then to CXXFLAGS, so it’s possible it’s needed on both…
Finally, I ran into the problem that Nikos (RealNC) refers to in the above post: the version of curl on CentOS 5 is ancient (7.15) and frobtads needs 7.18. I had errors like this:
CXX tads3/unix/frob-osnetunix.o
tads3/unix/osnetunix.cpp: In static member function ‘static int OS_HttpClient::request(int, const char*, short unsigned int, const char*, const char*, const char*, size_t, OS_HttpPayload*, CVmDataSource*, char**, char**, const char*)’:
tads3/unix/osnetunix.cpp:888: error: ‘CURLFORM_STREAM’ was not declared in this scope
tads3/unix/osnetunix.cpp:1016: error: ‘CURLINFO_REDIRECT_URL’ was not declared in this scope
make[1]: *** [tads3/unix/frob-osnetunix.o] Error 1
make[1]: Leaving directory `/tmp/frobtads-1.2.3'
make: *** [all] Error 2
My search for a way to install a new curl lead me to the “remi” repo: blog.famillecollet.com/pages/Eng … troduction . I followed the advice here: http://blog.famillecollet.com/pages/Config-en. For my installation, that was to configure yum for EPL and remi:
wget http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
sudo rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm
and then install all the curl packages with remi enabled:
sudo yum --enablerepo=remi install curl libcurl ibcurl-devel
This involved updating some packages to remi’s version, including php, libssh2, etc. Clearly, this is something you should consider carefully on a production server. Maybe there is a way to install curl privately for frobtads.
After this, “make” worked fine with just a couple warnings.