Re: mod_perl-1.99_09 for Redhat 9
On Wed, Jun 25, 2003 at 06:53:52PM -0400, Bill Marrs wrote: I'm looking for a Redhat 9 compatible mod_perl-1.99_09 rpm. If anyone has one or knows where I can get one, let me know. For my RedHat 8.0 I've made a custom .spec file to build an RPM directly from the CVS sources. Get the 'modperl-2.0.spec' file attached to this mail, and launch the following command (as root, or any other user if you have configured an RPM build environnement for it): # rpmbuild -bb modperl-2.0.spec It should fetch the latest CVS source, and start the build process, then package the files into: /usr/src/redhat/RPMS/i386/mod_perl-2.0_cvs-1.99.10.i386.rpm Now you can try to upgrade your mod_perl with: # rpm -Uvh mod_perl-2.0_cvs-1.99.10.i386.rpm At this point, it should tell you there is a problem with the following missing dependencies: perl(Apache::FunctionTable) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::StructureTable) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::TestConfigParse) is needed by mod_perl-2.0_cvs-1.99.10 perl(Apache::TestConfigPerl) is needed by mod_perl-2.0_cvs-1.99.10 You can ignore them and force the upgrade with the --nodeps option: # rpm -Uvh --nodeps mod_perl-2.0_cvs-1.99.10.i386.rpm (In fact, the RedHat SRPMS use a 'filter-requires.sh' shell script that remove these dependencies from the require list) Note that I skip the 'make test' phase. Regards, Jérôme -- Name: mod_perl Version: 2.0_cvs Release: 1.99.10 Group: System Environment/Daemons License: GPL Summary: An embedded Perl interpreter for the Apache Web server. Source: http://perl.apache.org/dist/mod_perl-%{version}.tar.gz URL: http://perl.apache.org/ BuildRoot: %{_tmppath}/%{name}-root Requires: httpd = 2.0.40, perl = 5.8.0 BuildPrereq: httpd-devel = 2.0.40, perl Prereq: perl %description Mod_perl incorporates a Perl interpreter into the Apache web server, so that the Apache web server can directly execute Perl code. Mod_perl links the Perl runtime library into the Apache web server and provides an object-oriented Perl interface for Apache's C language API. The end result is a quicker CGI script turnaround process, since no external Perl interpreter has to be started. Install mod_perl if you're installing the Apache web server and you'd like for it to directly incorporate a Perl interpreter. %prep rm -Rf $RPM_BUILD_DIR/mod_perl-2.0_cvs cvs -d :pserver:[EMAIL PROTECTED]:/home/cvspublic co modperl-2.0 mv modperl-2.0 mod_perl-2.0_cvs %build cd mod_perl-%{version} # Compile the module. perl Makefile.PL \ PREFIX=$RPM_BUILD_ROOT/usr \ INSTALLDIRS=vendor \ MP_APXS=%{_sbindir}/apxs \ MODPERL_AP_INCLUDEDIR=$RPM_BUILD_ROOT/usr/include/httpd \ MODPERL_AP_LIBEXECDIR=$RPM_BUILD_ROOT%{_libdir}/httpd/modules make # Run the test suite. # Need to make t/htdocs/perlio because it isn't expecting to be run as # root and will fail tests that try and write files because the server # will have changed it's uid. #mkdir t/htdocs/perlio #chmod 777 t/htdocs/perlio #make test %install [ $RPM_BUILD_ROOT != / ] rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir}/httpd/modules cd mod_perl-%{version} make install MODPERL_AP_LIBEXECDIR=$RPM_BUILD_ROOT%{_libdir}/httpd/modules MODPERL_AP_INCLUDEDIR=$RPM_BUILD_ROOT/usr/include/httpd # Remove the temporary files. find $RPM_BUILD_ROOT%{_libdir}/perl?/vendor_perl/*/*/auto -name *.bs | xargs rm %clean [ $RPM_BUILD_ROOT != / ] rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc Changes INSTALL LICENSE README docs /usr/bin/* /usr/include/httpd/* %{_libdir}/httpd/modules/mod_perl.so %{_libdir}/perl?/vendor_perl/*/*/auto/* %{_libdir}/perl?/vendor_perl/*/*/Apache %{_libdir}/perl?/vendor_perl/*/*/Bundle/* %{_libdir}/perl?/vendor_perl/*/*/APR %{_libdir}/perl?/vendor_perl/*/*/ModPerl %{_libdir}/perl?/vendor_perl/*/*/*.pm /usr/man/man3/*.3* %changelog * Wed Jun 25 2003 Jérôme Augé [EMAIL PROTECTED] 1.99-CVS - build mod_perl-2.0 RPM from the CVS sources (based on RedHat SPEC file)
Re: errors installing libapreq [RESOLVED]
Well, I rebuilt Apache/mod_perl, and it seemed to work. For those that hit the same error, the fix -- which I've saved as a script for future reference :) -- is as follows: * Install Apache/mod_perl: #!/bin/sh # chd.build.apachemodperl.sh perl=/sw/bin/perl modperldir=/usr/src/mod_perl-1.27 apachedir=/usr/src/apache_1.3.27 builddir=/usr/local/apache pushd $modperldir $perl Makefile.PL \ APACHE_SRC=../apache_1.3.xx/src \ APACHE_PREFIX=${builddir} \ APACHE_USER=www \ APACHE_GROUP=www \ DO_HTTPD=1 \ USE_APACI=1 \ EVERYTHING=1 \ APACI_ARGS='--sbindir=${builddir}/sbin, \ --sysconfdir=${builddir}/etc, \ --localstatedir=${builddir}/var, \ --runtimedir=${builddir}/var/run, \ --logfiledir=${builddir}/var/logs, \ --proxycachedir=${builddir}/var/proxy, \ --enable-module=so' make make test sudo make install pushd $apachedir sudo make install echo Verifying that the build worked: ${builddir}/sbin/apachectl configtest \ echo congratulations, you may now reset apache by running \ echo ${builddir}/sbin/apachectl start * Installation may disrupt Perl modules. I had to rebuild Apache::Test % sudo /sw/bin/perl -MCPAN -e shell cpan install Apache::Test * Install libapreq: % perl Makefile.PL \ -httpd /usr/local/apache/sbin/httpd \ -apxs /usr/local/apache/sbin/apxs % make % make test % make install Everything went smoothly up to the `perl Makefile.PL [...]` step, where I got this error: skipping test setup...Undefined subroutine Apache::Test::config called at /sw/lib/perl5/site_perl/5.8.0/darwin/Apache/TestMM.pm line 90. Warning: prerequisite Apache::Test 1.03 not found. We have unknown version. And, as I say, rebuilding Apache::Test in the CPAN shell took care of that. Others may hit different problems that could be fixed similarly. All better now :) -- Chris Devers[EMAIL PROTECTED] channeler, n. Also SPIRIT GUIDE. Politically correct terms for DAEMON. -- from _The Computer Contradictionary_, Stan Kelly-Bootle, 1995
mod_perl And Redirection
Hello there, My apologies if you already have received this email, but I keep getting a message that the mail was not sent. We have just upgraded to : Apache/1.3.27 Ben-SSL/1.48 (Unix) PHP/4.2.3 mod_perl/1.27 configured Running perl 5.6.1. I am getting 302 error message on my redirects. This comes as a complete surprise since the same piece of code works just fine on: Apache/1.3.14 Ben-SSL/1.42 (Unix) PHP/4.0.3pl1 mod_perl/1.24_01 configured Here is my code: $r-headers_in-unset(Content-length); $r-header_out(Location = $uri); $r-status(REDIRECT); $r-send_http_header; return REDIRECT; I am not sure where to begin debugging. I first wanted to check w/ you guys to see if there are any quick fixes. I appreciate any feed back. -r
Expect and Apache
Hello there, I am wondering how to stop Expect writting to stdout its error message? Does any one have any ideas? I appreciate all your comments. -r
Re: [mp1] 1.28 release candidate #2
On Wed, 2003-06-25 at 16:32, Steve Hay wrote: Hi Philippe, Philippe M. Chiasson wrote: On Wed, 2003-06-25 at 00:12, Steve Hay wrote: Philippe M. Chiasson wrote: [...] If you feel like submitting a back-port of Apache::Reload (with or without my new namespace deletion code), that has a few decents tests for it and works with perl 5.5.3 up to bleadperl, I would be happy to slip it into mp 1.28 with a version of 1.0_0 or similar to make sure CPAN won't be fooled into installing it for now. Just noticed there is Apache::Reload 0.07 on CPAN, so it would be safe. The last patch that I submitted (http://marc.theaimsgroup.com/?l=apache-modperl-devm=105595499417788w=2) almost fits the bill -- just remove the if (MOD_PERL2) stuff at the top for a mp1-only version. However, that uses the B module, which is only available from 5.005_03 up. That's all that you're asking for above, but when I previously pointed out that the current mp1 Makefile.PL specifies 5.003_97 up (in general, different on Win32/cygwin), you said that you didn't want to have to up the minimum requirement to 5.005_03. I also currently have no idea how to write tests for Apache modules and I'm unlikely to learn in the next couple of days, so unless you're happy with a 5.005_03 requirement for Apache::Reload and either don't mind having no tests or else can write some yourself then it looks like I'll have to wait until 1.29. Here is what I think I am going to do in light of all this and a high level of cafeeine... Take Apache::Reload from mp2 as-is (it's 0.9), and mod_perl1-ify it. Dump it in mod_perl 1 Change it's version number to 0.8_1 so CPAN won't pick it up. Release 1.28 (eventually...) Then work on the added functionnality for Apache::Reload and solve all other issues of dependencies on B, ModPerl::Util::symbol_undef_code, etc. Good idea! We've had so many ideas flying around about how to implement the new UndefOnReload feature and where to put the code that I'd completely forgotten that there is an existing module that already works (without that feature)! Getting that into mp1 as a first step is an excellent move. So I'll do exactly that ! I don't want this issue to slow down the long-awaited release of 1.28. But at the same time , StatINC is quite old and users of mp1 should be 'motivated' to upgrade to Apache::Reload, so it makes sense to go in mp1 as well. Maybe for 1.29 we could even talk about deprecating/removing Apache::StatINC alltogether, for example. I expect there would be some objections to removing Apache::StatINC altogether (at least for while yet). Deprecating it is certainly a good idea once the UndefOnReload option is added to Apache::Reload; until then, some may actually prefer Apache::StatINC. I am aware of that. I was pointing a possibility I would consider if I were to be RM for 1.29 ;-) Steve -- Philippe M. Chiasson /gozer\@(cpan|ectoplasm)\.org/ 88C3A5A5 (122FF51B/C634E37B) http://gozer.ectoplasm.org/F9BF E0C2 480E 7680 1AE5 3631 CB32 A107 88C3 A5A5 Q: It is impossible to make anything foolproof because fools are so ingenious. perl -e'$$=\${gozer};{$_=unpack(P7,pack(L,$$));/^JAm_pH\n$/print||$$++redo}' signature.asc Description: This is a digitally signed message part