|
Softpanorama |
May the source be with you, but remember the KISS principle ;-)
Softpanorama Search
|
| News | PHP | Recommended Links | GCC on AIX | Compilation of open source on AIX | |
| aix toolbox | Apache on AIX | Compiling PHP with Oracle support | Humor | Etc |
The content was adapted from IBM Wikis - AIX 5L Wiki - aixopen with corrections and enhancements
AIX 5.3 ML 03 is assumed. The gcc 4.0 or later should be installed.
rpm -Uvh *.rpm
gunzip php*tar.gz tar xvf php*.tar
/* --- Signed/Unsigned eight-byte scalar (orasb8/oraub8) --- */
#if (__STDC__ != 1) || defined(__64BIT__)
# define ORAXB8_DEFINED
# ifndef lint
# ifdef __64BIT__
typedef unsigned long oraub8;
typedef signed long orasb8;
Correction:
1. Add
|| defined(HAVE_LONG_LONG)
to the #if
2. Before configuring php, execute
export CFLAGS="$CFLAGS -DHAVE_LONG_LONG"
export PATH=/opt/freeware/bin:$PATH
export CFLAGS="$CFLAGS -DHAVE_LONG_LONG"
./configure --prefix=/usr/local \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/apache2/conf \
--with-gd \
--with-ldap \
--with-zlib-dir=/opt/freeware/lib \
--enable-shared --disable-static \
--with-zlib \
--with-jpeg-dir=/opt/freeware/lib \
--with-png-dir=/opt/freeware/lib \
--with-xpm-dir=/opt/freeware/lib \
--with-oci8=/oracle/app/oracle/product/10.2.0/db_1 \
--with-freetype-dir=/opt/freeware/lib \
--with-oci8=/oracle/app/oracle/product/10.2.0/db_1
--with-oci8=$ORAHOME
if $ORAHOME is defined
make
In file included from /home/bezroun/php-5.2.5/ext/oci8/oci8.c:50:
/home/bezroun/php-5.2.5/ext/oci8/php_oci8_int.h:354: error: parse error before 'oraub8'
make: The error code from the last command is 1.
Error: oraub8 undeclared
Cause: $ORAHOME/rbms/public/oratypes.h (for some mental or religious reasons) contains these lines:
/* --- Signed/Unsigned eight-byte scalar (orasb8/oraub8) --- */
#if (__STDC__ != 1) || defined(__64BIT__)
# define ORAXB8_DEFINED
# ifndef lint
# ifdef __64BIT__
typedef unsigned long oraub8;
typedef signed long orasb8;
Solution:
1. Add
|| defined(HAVE_LONG_LONG)
to the #if
2. Before configuring php, execute
export CFLAGS="$CFLAGS -DHAVE_LONG_LONG"
Install PHP with the following two commands
make install
Installing PHP SAPI module: apache2handler /usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' libphp5.la /usr/local/apache2/modules rm -f /usr/local/apache2/modules/libphp5.so /usr/local/apache2/build/libtool --mode=install cp libphp5.la /usr/local/apache2/modules/ cp .libs/libphp5.a /usr/local/apache2/modules/libphp5.a cp .libs/libphp5.lai /usr/local/apache2/modules/libphp5.la libtool: install: warning: remember to run `libtool --finish /home/php/php-5.2.5/libs' chmod 755 /usr/local/apache2/modules/libphp5.so ... ... ...
Often make install fails to move .libs/libphp5.so to destination. In this case you need to execute the command manually:
cp .libs/libphp5.so /usr/local/apache2/modules
If you do not have your own php.ini you need to put default into conf directory
cp php.ini-recommended /usr/local/apache2/conf/php.ini
Assuming you have just installed Apache2+ (and it is working OK) and have just installed PHP as in the above section then this is what you need to configure PHP to work.
LoadModule php5_module modules/libphp5.so AddType application/x-httpd-php .php DirectoryIndex index.php
;date.timezone =
date.timezone = "Europe/London"
<h1> PHP testing </h1> <?PHP phpinfo() ?>
chmod 755 testing.php
chown nobody:nobody testing.php
http:<you-machine>/testing.php
cd /usr/local/apache2 tar cvf /tmp/apache2.tar
mkdir -p /usr/local/apache2 cd /usr/local/apache2 tar xvf /tmp/apache2.tar .
/usr/local/apache2/bin/apachectl -t /usr/local/apache2/bin/apachectl -k start
Error: oraub8 undeclared
Cause: $ORAHOME/rbms/public/oratypes.h (for some mental or religious reasons) contains these lines:
/* --- Signed/Unsigned eight-byte scalar (orasb8/oraub8) --- */
#if (__STDC__ != 1) || defined(__64BIT__)
# define ORAXB8_DEFINED
# ifndef lint
# ifdef __64BIT__
typedef unsigned long oraub8;
typedef signed long orasb8;
Solution:
1. Add
|| defined(HAVE_LONG_LONG)
to the #if
2. Before configuring php, execute
export CFLAGS="$CFLAGS -DHAVE_LONG_LONG"
--with-oci8=/oracle/app/oracle/product/10.2.0/db_1'
21 December 2006
July 9th, 2006 | FASherman
This build was accomplished on AIX 5.3 ML 03 with no IBM compilers installed. I highly recommend building and installing Apache 2 and PHP 5.1 together. Performing these separately can have unpredicted results.
PrerequisitesCompiling Apache2+ using GCC
- Make sure you have the necessary free space in the following filesystems:
- /usr
- /opt
- /home
- /tmp
- Download the following:
- Apache Web Server 2.2.2 source code from Welcome! - The Apache HTTP Server Project
- GNU C compiler version 4 for AIX 5.3 from IBM AIX Toolbox Download Page - Alphabetical Listing
- GCC library for AIX 5.3 from IBM AIX Toolbox Download Page - Alphabetical Listing
- PHP 5.1 source code from PHP: Downloads
- XML support – IBM’s AIX Toolbox for Linux Applications is back rev’d. Use these instead
General tools from IBM AIX Toolbox Download Page - Alphabetical Listing
- LEX flex-2.5
- XML support expat-1.95.7
- Compression library zlib-1.2.2
- Compression develoment zlib-devel-1.2.2
- Compression library bz2-1.0.2-3
- jpeg support libjpeg-6b-6
- jpeg support development libjpeg-devel-6b-6
- png support libpng-1.2.1-6
- png development libpng-devel-1.2.1-6
- Pixmap xpm-3.4k
- Pixmap development xpm-devel-3.4k
- Freetype2 fonts freetype2-2.1.7-2
- Freetype2 fonts development freetype2-devel-2.1.7-2
- Gettext support gettext-0.10.40
- Any other libraries you might need for Apache or PHP
- Install all the RPM files
- Install libm.a from the AIX CDROM
- Install the compiler and library
rpm -Uvh gcc-4*.rpm
rpm -Uvh libgcc-4*rpm
- Uncompress the Apache Web Server source into your home directory
# gunzip httpd-2*tar.gz
# tar xvf httpd-2*.tar
# cd httpd*- Build the configuration file enabling shared object
# ./configure -C --enable-so --prefix /usr/local/apache2- Compile the server
# make
- Install the server (/usr/local/apache2)
# make installCompiling PHP using GCC
- Uncompress the PHP source code file and untar the file
# gunzip php*tar.gz
# tar xvf php*.tar
# cd php-5.1.4- Build the configuration file enabling shared objects
# export PATH=/opt/freeware/bin:$PATH
# ./configure --prefix=/usr/local --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/apache2/conf --with-gd --with-pear --with-gettext --with-mime-magic --with-zlib-dir=/opt/freeware/lib --enable-shared --disable-static --with-png --with-zlib --with-bz2 --with-xml --with-jpeg-dir=/opt/freeware/lib --with-png-dir=/opt/freeware/lib --with-xpm-dir=/opt/freeware/lib --with-freetype-dir=/opt/freeware/lib- Compile PHP with the following command:
# make
NOTE: There will be compiler warnings about pointers type mismatches. The can be disregarded.- Install PHP with the following two commands
# cp .libs/libphp5.so /usr/local/apache2/modulesConfiguring Apache2 with PHP
# cp php.ini-recommended /usr/local/apache2/conf/php.ini
- Stop Apache2
# /usr/local/apache2/bin/apachectl -k stop- Edit /usr/local/apache2/conf/httpd.conf, adding the following at the end
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
DirectoryIndex index.php
- Edit the /usr/local/apache2/conf/php.ini file
Change the php variable:
;date.timezone =
to reflect your timezone- Restart Apache2
# /usr/local/apache2/bin/apachectl -k start- Now test PHP with Apache2
- Create a test web page
# vi /usr/local/apache2/htdocs/phpinfo.php
<h1> PHP testing </h1>
<?PHP phpinfo() ?>- Open the page in your browser: http://your_server/phpinfo.php
- Verify the php data
- Delete phpinfo.php
# rm /usr/local/apache2/htdocs/phpinfo.php
This Wiki page contains the following sections:
- OpenSource with AIX
- Where to get Open Source with AIX
- More AIX Toolbox for Linux Applications
- Does AIX come with compilers for compiling Open Source?
- Getting the latest Apache2 web server for AIX
- Compiling Apache2.2 on AIX using the GNU GCC compiler - By Example
- Configuring Apache2.2 on AIX - By Example
- Installing MySQL
- PHP and AIX
**Compiling PHP on AIX using the GNU GCC compiler - By Example
- Configuring PHP with Apache2.2 on AIX - By Example
- Once compiled moving Apache2+PHP to a new/production machine
- Samba running on AIX
- Pre-compiled Samba binaries
|
Re: Connect PHP5 to oracle9i on windows platfom
Posted: May 29, 2007 5:21 PM |
||
|
Windows installation link http://www.exzilla.net/docs/php-oci8/apache-php-oci8-01.php. you might need InstantClient to connect, http://www.oracle.com/technology/software/tech/oci/instantclient/index.html |
||
Copyright © 1996-2009 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Site uses AdSense so you need to be aware of Google privacy policy. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.
Disclaimer:
Last modified: August 12, 2009