Re: compile php old extensions for new zend api php 5.4.9

From: Date: Tue, 11 Dec 2012 10:10:30 +0000
Subject: Re: compile php old extensions for new zend api php 5.4.9
References: 1 2  Groups: php.pecl.dev 
Request: Send a blank email to pecl-dev+get-10029@lists.php.net to get a copy of this message
Hello Johannes and all, Thank you for your help. I compiled it correctly! This was a positive step, now during execution I have segmentation fault for every apache's child process. I have mpm worker model, so multithreaded, php is compiled with multithreaded support. About tthe bug, it is already opened by someone else (bug 62091). I don't know how to apply a pack, I will do my best to learn how to do it, and I'm not sure that it is the correct pack, because of the segmentation fault, that I don't know how to track. This is of course not sure that the segmentation fault depends on my changes on the code, but for the moment I have no idea how to understand why I have the segmentation fault, which code line causes it. I will work on it and try to advance in some way. Thanks. Have a nice day, M ----- Original Message ----- From: "Johannes Schlüter" <johannes@schlueters.de> To: "Martinello" <martinello@email.it> Cc: <pecl-dev@lists.php.net> Sent: Tuesday, December 11, 2012 3:20 AM Subject: Re: [PECL-DEV] compile php old extensions for new zend api php 5.4.9 Hi, On Tue, 2012-12-11 at 01:47 +0100, Martinello wrote: [..] > In memtrack.c, I get: > warning: assignment discards 'const' qualifier from pointer target type [...] > then, In function 'memtrack_execute_internal' in memtrack.c: > warning: initialization discards 'const' qualifier from pointer target > type [enabled by default] > at the following lines: Those can be ignored for now. > > then the more serious: > memtrack.c, line > 112:63: error: 'znode_op' has no member > named 'op_type' > line 113:12: error: 'znode_op' has no member > named 'u' > In function 'memtrack_execute': > > This on line 113, I found that I can solve it, substituting the line 113 > with > switch (exec_data->opline->extended_value) { Right. Also look at the implementation of debug_print_backtrace in Zend/zend_builtin_functions.c which, to some degree, does the same as this function. (find a function name for an op_array) > But I got lost for the rest and I don't manage to solve the op_type. > > And finally, I get also: > > /usr/local/include/php/Zend/zend_execute.h:380:22: note: expected 'const > char ** > ' but argument is of type 'char **' If I see it correctly this is caused by class_name = get_active_class_name(&space TSRMLS_CC); in memtrack.c:77. Fix should be (untested) to change memtrack.c:71 from char *space; to const char *space; > Your help is highly appreciated to get it out. Please also open a bug ticket and attach the patch as far as you get! Thanks, johannes -- Caselle da 1GB, trasmetti allegati fino a 3GB e in piu' IMAP, POP3 e SMTP autenticato? GRATIS solo con Email.it http://www.email.it/f Sponsor: Cerchi un QUADRO per arredare casa? Su MisterCupido.com puoi acquistare Quadri Moderni, Astratti, Floreali, Panoramici, in Pannelli, ecc. Consegne in tutta Italia in soli 2-3 giorni Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=12389&d=11-12

« previous php.pecl.dev (#10029) next »