Re: Build error
| From: | Yasuo Ohgaki | Date: | Tue, 19 Mar 2002 08:04:37 +0000 |
| Subject: | Re: Build error | ||
| References: | 1 2 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-81478@lists.php.net to get a copy of this message | ||
Markus Fischer wrote:
On Tue, Mar 19, 2002 at 04:46:10PM +0900, Yasuo Ohgaki wrote :Following files were generated by re2c. url_scanner_ex.c var_unserializer.c I got undefined symbol, since these files are not properly updated. (i.e. some functions are not defined since CVS think I deleted the lines) If system does not have re2c, there won't be such problem if files are managed properly. It may not happen unless someone update/check out CVS source certain timing. Although it could be rare, this could be annoying for system that has re2c installed.... And I get these diff after deleting the C file, cvs update and make. cvs server: Diffing ext/standard Index: ext/standard/url_scanner_ex.c =================================================================== RCS file: /repository/php4/ext/standard/url_scanner_ex.c,v retrieving revision 1.49 diff -u -r1.49 url_scanner_ex.cI finally found out why I get build error for CGI. Since I have re2c installed on my system, it creates C source. Since C source generated by re2c is in repository, it can differ a little and sometimes results in undefined symbol when compiling. (It did in my case. Since I never edit the CVS check out, I didn't expect there is a not updated C source in there) Is it possible to bundle re2c? or make it required build tool? and delete generated C source? cvsclean should delete re2c generated file since what it suppose to do. IMO.What undefined symbols exactly? Unless the timestamp is right, I always thought it's not necessary to rebuild the C source file.
--- ext/standard/url_scanner_ex.c 4 Mar 2002 08:37:44 -0000 1.49 +++ ext/standard/url_scanner_ex.c 19 Mar 2002 07:17:33 -0000@@ -1,5 +1,5 @@ -/* Generated by re2c 0.5 on Fri Mar 1 17:51:19 2002 */ -#line 1 "url_scanner_ex.re" +/* Generated by re2c 0.5 on Tue Mar 19 15:48:14 2002 */ +#line 1 "/home/yohgaki/cvs/php/HEAD/ext/standard/url_scanner_ex.re" /* +----------------------------------------------------------------------+
| PHP Version 4 |Index: ext/standard/var_unserializer.c =================================================================== RCS file: /repository/php4/ext/standard/var_unserializer.c,v retrieving revision 1.11 diff -u -r1.11 var_unserializer.c
--- ext/standard/var_unserializer.c 18 Mar 2002 08:22:33 -0000 1.11 +++ ext/standard/var_unserializer.c 19 Mar 2002 07:17:33 -0000@@ -1,5 +1,5 @@ -/* Generated by re2c 0.5 on Tue Nov 27 00:35:25 2001 */ -#line 1 "/usr/src/web/php/php4/ext/standard/var_unserializer.re" +/* Generated by re2c 0.5 on Tue Mar 19 15:44:10 2002 */ +#line 1 "/home/yohgaki/cvs/php/HEAD/ext/standard/var_unserializer.re" #include "php.h" #include "ext/standard/php_var.h" #include "php_incomplete_class.h" @@ -419,7 +419,7 @@
}
} else
efree(class_name);
-
+
*p = YYCURSOR;
elements = object_common1(UNSERIALIZE_PASSTHRU, ce);
--
Yasuo Ohgaki