camaran Posted December 10, 2015 Report Posted December 10, 2015 Hi in php7 the only ext available are mysqli and mysqlnd how i can use it with revive? Quote
firstimpression Posted December 10, 2015 Report Posted December 10, 2015 Same issue here, despite that the 3.2.0 release notes state that this version of Revive adserver is compatible with PHP7: "Added preliminary support for PHP7"Does that mean that it does not actually support PHP7, but has some changes to make it a bit more compatible..? Quote
firstimpression Posted December 11, 2015 Report Posted December 11, 2015 (edited) Solved this by compiling PHP's pecl mysql extension from source:$ git clone https://github.com/php/pecl-database-mysql mysql --recursiveGo to directory of the downloaded files, and then:$ phpize $ ./configure $ make $ make installThen you have to register the extension in php.ini:extension=/usr/local/lib/php/[. . . path to PHP extensions]/mysql.soThen restart Apache, and Revive works fine.PS. When I ran "configure" I also had to specify path to php_config:./configure --with-php-config=/usr/local/bin/php-config Edited December 11, 2015 by firstimpression bdamage 1 Quote
camaran Posted December 11, 2015 Author Report Posted December 11, 2015 Yes but i think the best solution is migrate to pdo or mysqli Quote
andrewatfornax Posted January 7, 2016 Report Posted January 7, 2016 Solved this by compiling PHP's pecl mysql extension from sourceThank you!I think a ticket was raised to report this as well, and the documentation has since been updated to note this requirement. Yes but i think the best solution is migrate to pdo or mysqliPull requests in GitHub always welcomed! Quote
Roberto Pasini Posted January 15, 2016 Report Posted January 15, 2016 After more than one month Revive is not compatible yet with PHP 7.The mysql extension was deprecated on Jun 2013 (php 5.5.0) and you are still using it, with the consequent security and performance issues.I'm perplexed. Quote
Erik Geurts Posted January 18, 2016 Report Posted January 18, 2016 After more than one month Revive is not compatible yet with PHP 7.The mysql extension was deprecated on Jun 2013 (php 5.5.0) and you are still using it, with the consequent security and performance issues.I'm perplexed.Revive Adserver is definitely compatible with PHP7, this has been tested thoroughly.This item was addressed on a Github issue: https://github.com/revive-adserver/revive-adserver/issues/652 and the Requirements page at https://www.revive-adserver.com/support/requirements/ where it says:Revive Adserver, from version 3.2, is also fully compatible with the newly released PHP 7. However, you will only be able to use it with Postgres out of the box, since the old “mysql” extension that Revive Adserver uses has been removed from the official distribution. Should you wish to run it with PHP7 and a MySQL backend, you will need to install the mysql extension from PECL. Quote
andrewatfornax Posted January 20, 2016 Report Posted January 20, 2016 After more than one month Revive is not compatible yet with PHP 7.The mysql extension was deprecated on Jun 2013 (php 5.5.0) and you are still using it, with the consequent security and performance issues.I'm perplexed.Hi @Roberto Pasini,No need to be perplexed! As Erik mentions above, Revive Adserver will work with PHP7, just using the mysql extension via PECL.It would be great to be able to move to pdo or mysqli, as mentioned by others above - but we're currently without any kind of sponsorship or revenue - the core team supports Revive Adserver as best we can in our spare time, around our day jobs. So, it's not surprising at all (to me) that this hasn't been done yet - along with all of the many other things we haven't done (yet).We do our best! Quote
bdamage Posted July 20, 2016 Report Posted July 20, 2016 Just been hit with this after updating the server to Ubuntu 16.04.1 & PHP 7 mysql# phpize Configuring for: PHP Api Version: 20131106 Zend Module Api No: 20131226 Zend Extension Api No: 220131226 cp: cannot stat 'ltmain.sh': No such file or directory mysql# ./configure --with-php-config=/usr/bin/php-config checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E ... mysql# make /bin/bash /opt/pecl/mysql/libtool --mode=compile cc -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -I. -I/opt/pecl/mysql -DPHP_ATOM_INC -I/opt/pecl/mysql/include -I/opt/pecl/mysql/main -I/opt/pecl/mysql -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /opt/pecl/mysql/php_mysql.c -o php_mysql.lo libtool: compile: cc -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -I. -I/opt/pecl/mysql -DPHP_ATOM_INC -I/opt/pecl/mysql/include -I/opt/pecl/mysql/main -I/opt/pecl/mysql -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c /opt/pecl/mysql/php_mysql.c -fPIC -DPIC -o .libs/php_mysql.o In file included from /opt/pecl/mysql/php_mysql.c:63:0: /opt/pecl/mysql/php_mysql_structs.h:114:2: error: unknown type name 'zend_resource' zend_resource *default_link; ^ /opt/pecl/mysql/php_mysql_structs.h:115:2: error: unknown type name 'zend_long' zend_long num_links,num_persistent; ^ /opt/pecl/mysql/php_mysql_structs.h:116:2: error: unknown type name 'zend_long' zend_long max_links,max_persistent; ^ /opt/pecl/mysql/php_mysql_structs.h:117:2: error: unknown type name 'zend_long' zend_long allow_persistent; This is then followed by a few screens of more unknown type names of a similar kind. Is there something I missed? Quote
Matteo Beccati Posted July 21, 2016 Report Posted July 21, 2016 13 hours ago, bdamage said: Is there something I missed? I'm afraid so. The phpize you're using is not coming from PHP7. Quote
bdamage Posted July 21, 2016 Report Posted July 21, 2016 Thank you - it works now. All I did was "apt-get install php7.0-dev", then repeat your commands and we're serving ads again! andrewatfornax 1 Quote
angelfplaza Posted July 27, 2016 Report Posted July 27, 2016 On 18/01/2016 at 7:59 AM, Erik Geurts said: Revive Adserver is definitely compatible with PHP7, this has been tested thoroughly. This item was addressed on a Github issue: https://github.com/revive-adserver/revive-adserver/issues/652 and the Requirements page at https://www.revive-adserver.com/support/requirements/ where it says: So this answers means that nothing is going to be done to make this compatible from the devs? I know there is a solution but I prefer not to "play" out of the standard install so the upgrades and updates are easier to apply. Can we expect a core fix for this in near future? Quote
andrewatfornax Posted January 8, 2017 Report Posted January 8, 2017 Revive Adserver 4 is now out, which has improved support for MySQL under PHP 7. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.