cancel
Showing results for 
Search instead for 
Did you mean: 

MaxDB ext + Php-5.4

Former Member
0 Kudos

Hello,

i am trying to install php-5.4.13 with MaxDB ext.

configuring with the Option: --with-maxdb=/opt/sdb/programs/

It can be configured but then i get a lot of Errors,

thanks alot for you help

[root@sh php-5.4.13]# make

Makefile:783: warning: overriding commands for target `ext/maxdb/php_maxdb.lo'

Makefile:781: warning: ignoring old commands for target `ext/maxdb/php_maxdb.lo'

/bin/sh /usr/src/php-5.4.13/libtool --silent --preserve-dup-deps --mode=compile cc  -Iext/maxdb/ -I/usr/src/php-5.4.13/ext/maxdb/ -DPHP_ATOM_INC -I/usr/src/php-5.4.13/include -I/usr/src/php-5.4.13/main -I/usr/src/php-5.4.13 -I/usr/src/php-5.4.13/ext/date/lib -I/usr/src/php-5.4.13/ext/ereg/regex -I/usr/include/libxml2 -I/usr/include/freetype2 -I/opt/sdb/programs//sdk/sqldbc/incl -I/usr/src/php-5.4.13/ext/sqlite3/libsqlite -I/usr/src/php-5.4.13/TSRM -I/usr/src/php-5.4.13/Zend    -I/usr/include -g -O2 -fvisibility=hidden  -c /usr/src/php-5.4.13/ext/maxdb/php_maxdb.c -o ext/maxdb/php_maxdb.lo

In file included from /usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:100:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:203: error: duplicate âstaticâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:208: error: duplicate âstaticâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:215: error: duplicate âstaticâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_affected_rows_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:257: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_client_version_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:259: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_connect_errno_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:260: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_errno_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:262: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_field_count_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:264: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_insert_id_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:267: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_protocol_version_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:268: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_server_version_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:270: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_thread_id_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:272: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_link_warning_count_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:273: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_result_type_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:275: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_result_current_field_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:276: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_result_num_rows_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:277: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_affected_rows_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:280: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_insert_id_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:281: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_num_rows_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:282: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_param_count_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:283: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_field_count_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:284: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_stmt_errno_readâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:285: warning: comparison is always true due to limited range of data type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: At top level:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:335: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âmaxdb_link_methodsâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:386: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âmaxdb_result_methodsâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:408: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âmaxdb_stmt_methodsâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:484: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before âmaxdb_functionsâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:600: error: âmaxdb_functionsâ undeclared here (not in a function)

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âphp_maxdb_fetch_hashâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1714: error: âzend_fcall_infoâ has no member named âobject_ppâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1751: error: âzend_fcall_info_cacheâ has no member named âobject_ppâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_read_propertyâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1929: error: âzvalâ has no member named ârefcountâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1935: error: too few arguments to function âstd_hnd->read_propertyâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_write_propertyâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1969: error: âzvalâ has no member named ârefcountâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1970: error: âzvalâ has no member named ârefcountâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:1975: error: too few arguments to function âstd_hnd->write_propertyâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âmaxdb_objects_newâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2088: error: âzend_class_entryâ has no member named âdefault_propertiesâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âzm_startup_maxdbâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2129: warning: assignment from incompatible pointer type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2130: warning: assignment from incompatible pointer type

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2135: error: âmaxdb_link_methodsâ undeclared (first use in this function)

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2135: error: (Each undeclared identifier is reported only once

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2135: error: for each function it appears in.)

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2142: error: âmaxdb_result_methodsâ undeclared (first use in this function)

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:2148: error: âmaxdb_stmt_methodsâ undeclared (first use in this function)

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c: In function âzif_maxdb_stmt_bind_paramâ:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:5483: warning: âzend_get_parameters_exâ is deprecated (declared at /usr/src/php-5.4.13/Zend/zend_API.h:238)

make: *** [ext/maxdb/php_maxdb.lo] Error 1

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello,

from my point of view there seems something wrong with the configuring procedure or the includes.

The compilation errors are duplicate definitions

In file included from /usr/src/php-5.4.13/ext/maxdb/php_maxdb.c:100:

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:203: error: duplicate âstaticâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:208: error: duplicate âstaticâ

/usr/src/php-5.4.13/ext/maxdb/php_maxdb.h:215: error: duplicate âstaticâ

These definition should be only defined in php_maxdb.h

201: #if ZEND_MODULE_API_NO >= 20040412

202: static
203:   ZEND_BEGIN_ARG_INFO(second_arg_force_by_ref_rest, 1)
204:  ZEND_ARG_PASS_INFO(0)

205: ZEND_END_ARG_INFO();

207:static
208:     ZEND_BEGIN_ARG_INFO(third_arg_force_by_ref_rest, 1)

This problem doesn't come from a double include of php_maxdb.h which could not be since it is protected by

#ifndef PHP_MAXDB_H

#define PHP_MAXDB_H

Check your version of the installed ZEND API,  PECL and PHP version including autoconf.

Are there some configure warnigs?

Kind regards,

Burkhard

Former Member
0 Kudos

Hello Burkhard,

Thank you for your Help.

Unfortunately i am almost sure that it is not the installed Zend API, PECL and Co.!

I can successfully reconfigure php-5.2 (old Version which we used untill now) with the MaxDB ext.

I senpt the Weekend reinstalling some Linux Machine with new Versions of phh and httpd ...etc.

I tried to rebuild php with MaxDB ext. and Result is the same!  "duplicate âstaticâ"

Do you have any other suggestions please?

Do you have a qood howtos about configuring MaxDB + ODBC on linux with php?

We have too many applications runing with MaxDB, we "cant" change so easly to another DB regardless if it is going to be from SAP or not.

Thanks alot

kind regards

Former Member
0 Kudos

Hi pp schiller,

I am sorry. I try to reproduce it on my SLES11 image but I have to fight against libxml2 build erros

Will try it again tomorow.

Burkhard

simon_matter
Participant
0 Kudos

I have a number of patches for php 53x but I don't know if they work for 5.4. I'm even not sure if they work correctly on 5.3 because I'm not using them in production on 5.3.

Some of the patches I have made based on other older patches I found somewhere on the net.

I could send them to you so you could try if they make it work on 5.4 or you can adopt them to make them work on 5.4.

Let me know if you're interested and how I can send them to you.

Regards,

Simon

Former Member
0 Kudos

Hello,

Thank you Burkhard, thank you Simon.

@Simon the ext. from http://pecl.php.net/package/maxdb didnt work by you "too" with 5.3 without those patches? is that the case?

regards

pp

simon_matter
Participant
0 Kudos

Yes that's true, it doesn't build on 5.3 too without patches. However more patching may be needed for 5.4 maybe.

Regards,

Simon

Former Member
0 Kudos

Hello,

MaxDB now compiles and runs with PHP 5.4.For this I have made some little changes in

ext/maxdb/php_maxdb.c and  ext/maxdb/php_maxdb.h from the latest archive

on the PECL download http://pecl.php.net/package/maxdb (7.6.00.38)

I have configured PHP without libxml since I could not solve the rpm dependencie problems

./configure --with-maxdb=/opt/sdb/MaxDB --prefix=/home/burkhard/php --disable-libxml --disable-dom --disable-simplexml --disable-xml --disable-xmlreader --disable-xmlwriter --without-pear

I have also used the SQLDBC client from the latest MaxDB version (7.8.02.35).

Find the changed source files as attachment.

Kind regards,

Burkhard

Former Member
0 Kudos

Hello Burkhard,

thank you, thank you, thank you, thank you it is working, great job, thank you very much.

Thanks to SAP too, great support.

thank you again.

Regards

Answers (0)