I've just installed PHP5 on a Panther box. At the end of the progress messages, I see:
---> Installing php5 5.2.3_0+darwin_7+macosx
If this is your first install, you might want ---> Activating php5 5.2.3_0+darwin_7+macosx ---> Cleaning php5
This is not a misquote; it really does look interspersed and cut off like that. I can probably grep for "If this is your first install, you might want" and find the rest of the text, though I have not yet tried that. I suppose it might be relevant that I got this in interactive mode. I'm going to file a bug report, but in the meantime, can anybody offer any better hints as to how to proceed? — Pete Gontier <http://www.pete.gontier.org/>
Hi Pete, There are some problems with the user messages in the php5 port. It occurrs when you specify neither the apache nor the apache2 variant. This is a perfectly legitimate use of php, but did you intend to install it without Apache support? I attached a patch to the php5 port for the maintainer to evaluate that I think straightens out the messages. If you did intend to install Apache support, you must reinstall the port and specify a variant. Either +apache or +apache2. And until the user message fixes get applied to the port, here are instructions you may use: http://homepage.mac.com/duling/halfdozen/NeDi-Howto.html#d0e134 Mark Pete Gontier <pete@gontier.org> on Monday, June 11, 2007 at 8:57 AM -0800 wrote:
I've just installed PHP5 on a Panther box. At the end of the progress messages, I see:
---> Installing php5 5.2.3_0+darwin_7+macosx
If this is your first install, you might want ---> Activating php5 5.2.3_0+darwin_7+macosx ---> Cleaning php5
This is not a misquote; it really does look interspersed and cut off like that. I can probably grep for "If this is your first install, you might want" and find the rest of the text, though I have not yet tried that. I suppose it might be relevant that I got this in interactive mode. I'm going to file a bug report, but in the meantime, can anybody offer any better hints as to how to proceed?
Pete Gontier <[ http://www.pete.gontier.org/ ]http://www.pete.gontier.org/>
Thanks for the super -prompt and -useful response. Didn't know about variants. I ended up with "+apache" and second-guessing the instructions emitted to work with the Apache that was already on Panther, and this seems to have gone swimmingly. Having achieved comfort with variants, I threw in some more: "+mysql5 +sqlite +pear". We'll see what I get out of "+mysql5" in a few hundred years when my glacial development server finishes building all that I've thrown at it. I suspect I probably should have built mysql5 with its own set of variants (I would have thought "server" was implicit but it appears not to be), but maybe it will all work out. Good thing I am not in a hurry or I'd have to actually know what I am doing before trying it. :-) — Pete Gontier <http://www.pete.gontier.org/> On Jun 11, 2007, at 9:27 AM, markd@macports.org wrote:
Hi Pete,
There are some problems with the user messages in the php5 port. It occurrs when you specify neither the apache nor the apache2 variant. This is a perfectly legitimate use of php, but did you intend to install it without Apache support?
I attached a patch to the php5 port for the maintainer to evaluate that I think straightens out the messages. If you did intend to install Apache support, you must reinstall the port and specify a variant. Either +apache or +apache2. And until the user message fixes get applied to the port, here are instructions you may use: http://homepage.mac.com/duling/halfdozen/NeDi-Howto.html#d0e134
Mark
Pete Gontier <pete@gontier.org> on Monday, June 11, 2007 at 8:57 AM -0800 wrote:
I've just installed PHP5 on a Panther box. At the end of the progress messages, I see:
---> Installing php5 5.2.3_0+darwin_7+macosx
If this is your first install, you might want ---> Activating php5 5.2.3_0+darwin_7+macosx ---> Cleaning php5
This is not a misquote; it really does look interspersed and cut off like that. I can probably grep for "If this is your first install, you might want" and find the rest of the text, though I have not yet tried that. I suppose it might be relevant that I got this in interactive mode. I'm going to file a bug report, but in the meantime, can anybody offer any better hints as to how to proceed?
— Pete Gontier <[ http://www.pete.gontier.org/ ]http://www.pete.gontier.org/>
On Jun 11, 2007, at 19:27, Pete Gontier wrote:
Thanks for the super -prompt and -useful response. Didn't know about variants. I ended up with "+apache" and second-guessing the instructions emitted to work with the Apache that was already on Panther, and this seems to have gone swimmingly. Having achieved comfort with variants, I threw in some more: "+mysql5 +sqlite +pear". We'll see what I get out of "+mysql5" in a few hundred years when my glacial development server finishes building all that I've thrown at it. I suspect I probably should have built mysql5 with its own set of variants (I would have thought "server" was implicit but it appears not to be), but maybe it will all work out. Good thing I am not in a hurry or I'd have to actually know what I am doing before trying it. :-)
Yes, if you want to run a MySQL 5 server, you will need to uninstall the mysql5 port that just got installed (sudo port -f uninstall mysql5), and then install it with +server (sudo port install mysql5 +server). And this will again take a long time. Sorry... Also:
I've just installed PHP5 on a Panther box. At the end of the progress messages, I see:
---> Installing php5 5.2.3_0+darwin_7+macosx
If this is your first install, you might want ---> Activating php5 5.2.3_0+darwin_7+macosx ---> Cleaning php5
This is not a misquote; it really does look interspersed and cut off like that. I can probably grep for "If this is your first install, you might want" and find the rest of the text, though I have not yet tried that. I suppose it might be relevant that I got this in interactive mode. I'm going to file a bug report, but in the meantime, can anybody offer any better hints as to how to proceed?
Thank you for reporting this. I recently removed some stuff from php5. Before, it would build for apache by default, if you did not select a variant. I found this behavior weird; the MacPorts way is to select a variant if you want it. So I removed that logic, but did not realize what effect it would have on the messages emitted at the end. I'll fix the messages.
On Jun 11, 2007, at 6:05 PM, Ryan Schmidt wrote:
I ended up with "+apache" and second-guessing the instructions emitted to work with the Apache that was already on Panther, and this seems to have gone swimmingly. Having achieved comfort with variants, I threw in some more: "+mysql5 +sqlite +pear". We'll see what I get out of "+mysql5" in a few hundred years when my glacial development server finishes building all that I've thrown at it. I suspect I probably should have built mysql5 with its own set of variants (I would have thought "server" was implicit but it appears not to be), but maybe it will all work out. Good thing I am not in a hurry or I'd have to actually know what I am doing before trying it. :-)
Yes, if you want to run a MySQL 5 server, you will need to uninstall the mysql5 port that just got installed (sudo port -f uninstall mysql5), and then install it with +server (sudo port install mysql5 +server). And this will again take a long time. Sorry...
No need for apologies. This project is really well-put-together. The fact that I don't know how to use it well yet, and the fact that I am running it on a foolishly slow system, are hardly your problems. If I had any complaint it might be that I could have used some documentary detail on the variants. Right now, I'm scratching my head trying to figure out what good MySQL is without it being a server. Maybe that's what I want and I just don't understand exactly what "+server" implies. I'm probably going to install phpMySQL and see if I can get all these packages talking to each other on the same system, and if so then skipping "+server" was the right thing to do. And yes of course I understand that when someone whines about documentation then the thing to do is ask them to contribute some. Consider me asked. :-) I will if I can.
On Jun 11, 2007, at 22:47, Pete Gontier wrote:
On Jun 11, 2007, at 6:05 PM, Ryan Schmidt wrote:
I ended up with "+apache" and second-guessing the instructions emitted to work with the Apache that was already on Panther, and this seems to have gone swimmingly. Having achieved comfort with variants, I threw in some more: "+mysql5 +sqlite +pear". We'll see what I get out of "+mysql5" in a few hundred years when my glacial development server finishes building all that I've thrown at it. I suspect I probably should have built mysql5 with its own set of variants (I would have thought "server" was implicit but it appears not to be), but maybe it will all work out. Good thing I am not in a hurry or I'd have to actually know what I am doing before trying it. :-)
Yes, if you want to run a MySQL 5 server, you will need to uninstall the mysql5 port that just got installed (sudo port -f uninstall mysql5), and then install it with +server (sudo port install mysql5 +server). And this will again take a long time. Sorry...
No need for apologies. This project is really well-put-together. The fact that I don't know how to use it well yet, and the fact that I am running it on a foolishly slow system, are hardly your problems. If I had any complaint it might be that I could have used some documentary detail on the variants. Right now, I'm scratching my head trying to figure out what good MySQL is without it being a server. Maybe that's what I want and I just don't understand exactly what "+server" implies. I'm probably going to install phpMySQL and see if I can get all these packages talking to each other on the same system, and if so then skipping "+server" was the right thing to do. And yes of course I understand that when someone whines about documentation then the thing to do is ask them to contribute some. Consider me asked. :-) I will if I can.
If you want to use PHP to communicate with a MySQL server running on another machine, then you only need to install the plain port "mysql5". However, if you want to run a MySQL server on the machine on which you're installing the port, then you need "mysql5 +server". It seems like it would be a good idea to separate this into a separate "mysql5-server" port, so that if you forget to install mysql5 +server, you could just follow it up by installing mysql5- server, instead of having to rebuild all of mysql5 just to get the startup script. See the ports postgresql82 and postgresql82-server. James, what do you think? Documentation is sadly also in a sorry state -- nonexistent. It got left behind in the transition from "DarwinPorts" to "MacPorts." The docs are still in the repository, but out of date, and not on the web site anywhere. The phpmyadmin port is also a bit out of date -- 2.8.0.3; should be updated to 2.10.1. I contemplated updating it but haven't gotten to it yet. Haven't done much web development lately, so haven't needed it.
On Jun 11, 2007, at 8:47 PM, Pete Gontier wrote:
Right now, I'm scratching my head trying to figure out what good MySQL is without it being a server. Maybe that's what I want and I just don't understand exactly what "+server" implies. I'm probably going to install phpMySQL and see if I can get all these packages talking to each other on the same system, and if so then skipping "+server" was the right thing to do.
Did I say phpMySQL? I meant phpMyAdmin. Here's my latest sob story: I installed php5, and it worked well enough for the "phpinfo" function to spew its usual census. It seems notable that although I specified variant "+apache", the build did not seem to depend on MacPort's Apache. This was fine with me, as I was happy to use Apple's Apache, as this would save me time. And once php5 was built, this is what I did. As I said, it seemed to work fine. Then I installed phpMyAdmin, which did depend on MacPort's Apache. It seemed odd that phpMyAdmin triggered this while php5 with "+apache" did not. But that's fine; at the expense of some disk space and a bit less integration with System Preferences, I get a slightly newer Apache, right? Then the fun started. PHP stopped working. Having built MacPorts' Apache, turned off Apple's Apache, told MacPorts' Apache where to find PHP, and restarted to test the startup item MacPorts told me it created, "apachectl configtest" then told me "libphp5.so is garbled - perhaps this is not an Apache module DSO?" Hmmm. I didn't touch it and now it's garbled? Odd. I hatched some wacky theories involving install sequence and conflicts with Apple's Apache, but they didn't bear any fruit. So I started from scratch: nuked everything from orbit, then tried to sequence things carefully: Apache first, then MySQL, and then PHP. Here's what 'port installed' says:
apache @1.3.37_0 (active) curl @7.16.2_0 (active) expat @2.0.1_0 (active) freetype @2.3.4_1 (active) gettext @0.16.1_0 (active) gperf @3.0.3_0 (active) jpeg @6b_1 (active) libiconv @1.11_4+darwin_7 (active) libmcrypt @2.5.8_0 (active) libpng @1.2.18_0 (active) libxml2 @2.6.28_1 (active) libxslt @1.1.20_0 (active) mhash @0.9.9_0 (active) mysql5 @5.0.41_0+server (active) openssl @0.9.8e_0 (active) pcre @7.1_1+utf8 (active) php5 @5.2.3_0+apache+darwin_7+macosx+mysql5+pear (active) pkgconfig @0.21_0 (active) tiff @3.8.2_0 (active) zlib @1.2.3_1 (active)
Looks good to me. Sadly, I'm still getting this:
$ sudo apachectl configtest Syntax error on line 237 of /opt/local/etc/apache/httpd.conf: API module structure `php5_module' in file /opt/local/libexec/ apache/libphp5.so is garbled - perhaps this is not an Apache module DSO?
Ouch. Why did it work before where it refuses to work now? Obviously, I've done something different, but I'm at a loss to guess what. — Pete Gontier <http://www.pete.gontier.org/>
On Jun 12, 2007, at 14:41, Pete Gontier wrote:
On Jun 11, 2007, at 8:47 PM, Pete Gontier wrote:
Right now, I'm scratching my head trying to figure out what good MySQL is without it being a server. Maybe that's what I want and I just don't understand exactly what "+server" implies. I'm probably going to install phpMySQL and see if I can get all these packages talking to each other on the same system, and if so then skipping "+server" was the right thing to do.
Did I say phpMySQL? I meant phpMyAdmin.
We understood what you meant. :)
Here's my latest sob story:
I installed php5, and it worked well enough for the "phpinfo" function to spew its usual census. It seems notable that although I specified variant "+apache", the build did not seem to depend on MacPort's Apache. This was fine with me, as I was happy to use Apple's Apache, as this would save me time. And once php5 was built, this is what I did. As I said, it seemed to work fine.
Correct. "php5 +apache" currently uses Apple's Apache. This is inconsistent with MacPorts general policy and I will change it, eventually, so that +apache will use MacPorts Apache 1, and a new variant +apache_apple will use Apple's Apache.
Then I installed phpMyAdmin, which did depend on MacPort's Apache. It seemed odd that phpMyAdmin triggered this while php5 with "+apache" did not. But that's fine; at the expense of some disk space and a bit less integration with System Preferences, I get a slightly newer Apache, right?
I removed this from the phpmyadmin port yesterday. There's no reason why phpmyadmin (or any other web app) should be written to depend on any particular web server. (phpMyAdmin works perfectly well with lighttpd, too, for example.) "sudo port sync" to get the latest version of the phpmyadmin portfile which no longer depends on any specific web server port.
Then the fun started. PHP stopped working. Having built MacPorts' Apache, turned off Apple's Apache, told MacPorts' Apache where to find PHP, and restarted to test the startup item MacPorts told me it created, "apachectl configtest" then told me "libphp5.so is garbled - perhaps this is not an Apache module DSO?" Hmmm. I didn't touch it and now it's garbled? Odd.
You built php5 for Apple's Apache, and are now trying to use it with MacPorts Apache. Yes, that will not work. Built php5 for the version of Apache you want to use it with.
I hatched some wacky theories involving install sequence and conflicts with Apple's Apache, but they didn't bear any fruit. So I started from scratch: nuked everything from orbit, then tried to sequence things carefully: Apache first, then MySQL, and then PHP. Here's what 'port installed' says:
apache @1.3.37_0 (active) curl @7.16.2_0 (active) expat @2.0.1_0 (active) freetype @2.3.4_1 (active) gettext @0.16.1_0 (active) gperf @3.0.3_0 (active) jpeg @6b_1 (active) libiconv @1.11_4+darwin_7 (active) libmcrypt @2.5.8_0 (active) libpng @1.2.18_0 (active) libxml2 @2.6.28_1 (active) libxslt @1.1.20_0 (active) mhash @0.9.9_0 (active) mysql5 @5.0.41_0+server (active) openssl @0.9.8e_0 (active) pcre @7.1_1+utf8 (active) php5 @5.2.3_0+apache+darwin_7+macosx+mysql5+pear (active) pkgconfig @0.21_0 (active) tiff @3.8.2_0 (active) zlib @1.2.3_1 (active)
Looks good to me. Sadly, I'm still getting this:
$ sudo apachectl configtest Syntax error on line 237 of /opt/local/etc/apache/httpd.conf: API module structure `php5_module' in file /opt/local/libexec/ apache/libphp5.so is garbled - perhaps this is not an Apache module DSO?
Ouch. Why did it work before where it refuses to work now? Obviously, I've done something different, but I'm at a loss to guess what.
The php5 module was built for Apple's Apache but you're trying to use it with the MacPorts Apache. Looks like I should really get a move on and fix the php5 +apache variant to do what we say in the FAQ we do -- which is, use MacPorts software, not Apple software, by default, unless there's a good reason not to.
On Jun 12, 2007, at 4:21 PM, Ryan Schmidt wrote:
You built php5 for Apple's Apache, and are now trying to use it with MacPorts Apache. Yes, that will not work. Built php5 for the version of Apache you want to use it with.
It's great that we know what the problem is, and I am more than happy to perform whatever incantation is necessary to rebuild php5 against MacPorts' Apache, but I'm not sure what that is. I guess I'll go poke around in MacPorts' directories and see if I can figure something out.
Looks like I should really get a move on and fix the php5 +apache variant to do what we say in the FAQ we do -- which is, use MacPorts software, not Apple software, by default, unless there's a good reason not to.
Of course, that would be even better than an incantation. :-) — Pete Gontier <http://www.pete.gontier.org/>
On Jun 12, 2007, at 5:27 PM, Pete Gontier wrote:
You built php5 for Apple's Apache, and are now trying to use it with MacPorts Apache. Yes, that will not work. Built php5 for the version of Apache you want to use it with.
It's great that we know what the problem is, and I am more than happy to perform whatever incantation is necessary to rebuild php5 against MacPorts' Apache, but I'm not sure what that is. I guess I'll go poke around in MacPorts' directories and see if I can figure something out.
On second thought, now that we know what the problem is, and Ryan has a plan to fix it, please nobody kill any brain cells helping me marry php5 to MacPorts' Apache. I don't need it. I'll just go back to Apple's Apache until Ryan says php5 works with MacPorts' Apache. — Pete Gontier <http://www.pete.gontier.org/>
participants (3)
-
markd@macports.org
-
Pete Gontier
-
Ryan Schmidt