The "sybase.tgz" & "devlib.tgz" downloaded from,
http://www.sybase.com/products/samples/linux/
seems to be difficult to figure out what to do with it, and if this is to compile with PHP by doing,
$./configure --with-mysql --with-sybase-ct=DIR --with-apache=../apache_1.3.12 --enable-track-vars
$ make
$ make install
$ cd ../apache_1.3.x
$ ./configure --prefix=/www --activate-module=src/modules/php4/libphp4.a
$ make
by this point, the apache would complain about unreferenced functions and abort activiating the PHP module.
Similar error occur with the sybase-ct library download from
http://www.php.net/FAQ.php
This is BAD !!
So after fidling with the machine and reinstall linux for a dozen times, a team mate of mine find out a few rpms from
http://www.sybase.com/products/databaseservers/linux/thankyou1192.html
where you can download all the RPMs you need for sybase ASE and prepare to install PHP with Sybase!!
1.
Install the RPMs from " http://www.sybase.com/products/databaseservers/linux/thankyou1192.html "
$ rpm -hiv sybase-common-11.9.2-1.i386.rpm
then,
$ rpm -hiv sybase-openclient-11.1.1-1.i386.rpm
Now you can test your Sybase connection to a table by create an "interfaces" file in this format:
DATABASEServerName
query PROTOCOL NETWORK HOST PORT
like this:
EXAMPLEServer
master tli tcp /dev/tcp 1025
query tli tcp /dev/tcp 1025
For full documentation about how to create this file you can download "sybase-doc-11.9.2-1.i386.rpm" where look at
"u_config.pdf"
Place this "interfaces" file in your SYBASEBaseDir.
Then you need to set the env variable for (at least) your apache user by "export SYBASE=/SYBASEBaseDir"
Now you can check your config by using " $ SYBASEBaseDir/bin/isql -S SERVERNAME -U DBUSER -P PASSWD "
If you get error about "en_US", then you need to
Add the following,
[linux]
locale = en_US, us_english, iso_1
in SYBASEHomeDir/locales/locales.dat
2.
Following the INSTALL file in your
PHPHomeDir would do, where,
QUICK INSTALL (Static)
$ gunzip -c apache_1.3.x.tar.gz | tar xf - (OR "tar xvzf apache_1.3.x.tar.gz")
$ cd apache_1.3.x
$ ./configure --prefix=/www
$ cd ..
$ gunzip -c php-4.0.x.tar.gz | tar xf - (OR "tar xvzf php-4.0.x.tar.gz")
$ cd php-4.0.x
$ ./configure --with-mysql --with-sybase-ct=/SYBASEHomeDir --with-apache=../apache_1.3.x --enable-track-vars
$ make
$ make install
$ cd ../apache_1.3.x
$ ./configure --prefix=/www --activate-module=src/modules/php4/libphp4.a
(The above line is correct! Yes, we know libphp4.a does not exist at this
stage. It isn't supposed to. It will be created.)
make
(you should now have an httpd binary which you can copy to your Apache bin dir)
cd ../php-4.0.x
cp php.ini-dist /usr/local/lib/php.ini
You can edit /usr/local/lib/php.ini file to set PHP options.
Edit your httpd.conf or srm.conf file and add:
AddType application/x-httpd-php .php
REMEMBER to edit /usr/local/lib/php.ini where
sybase.interface_file = "/SYBASEHomeDir/interfaces"
and enable it.
Also "make install" your Apache source.
3.
Lastly edit your httpd.conf and start your Apache by issuing "apachectl start"