[sf-perl] perl on a mac

Michael Friedman friedman at highwire.stanford.edu
Mon Nov 17 22:08:09 PST 2008


Maybe I'm just cranky today or maybe I'm too partisan, but I feel I  
have to reply to "what a mess to go through for a supposedly polished  

Mac OS X does exactly what every other OS does when given the input  
and output you've shown: if you run a perl script on the command-line,  
and it uses print statements, it prints the output in that same  
window. Whether the output happens to be text, HTML, or binary data  
doesn't matter at all. Print is print.

It sounds to me like on Windows you were running perl not from the  
command-line but from a fancy IDE which would recognize that the  
output was HTML and read it for you, copy it to a temporary file, and  
open that file in your browser. This behavior sounds great, but it's  
unrelated to the operating system (and perl itself, for that matter).  
It's entirely a function of whatever IDE you were using that just  
happened to run on Windows.

To get the same behavior on OS X (or any other unix variant), you can  
do what Alex Feinberg suggested seven days ago:
	perl myscript.pl > /tmp/file.html && open /tmp/file.html

which tells perl to run your script (so instead of "myscript.pl" you'd  
use the path to your CGI script), take the output and write it to a  
file instead of to the screen, and then open that file. (The open  
command sees the extension ".html" and knows to open the file in your  
default browser.) If this doesn't work, there are only a couple of  

1. "perl" isn't in your path. Use wherever you installed perl instead.  
The built-in version is /usr/bin/perl.

2. Your script's output didn't properly parse as HTML. That can cause  
a blank page to appear in the browser. In this case, you can go read  
the temp file directly to see what happened or use "View Source" on  
the blank browser page.

If you are using BBEdit or TextMate or Eclipse or another heavy-duty  
OS X text editor it should be easy to set this up as a menu option  
within the editor.

Setting up apache to use something more than the default configuration  
is never an easy task, even on Windows. It's "messy" like tuning a  
race car is messy -- it's a really complicated engine because there's  
more power under the hood than you could possibly use on the streets.  
But again, that's a "feature" of apache, not of the OS.

So, it seems to me that what you are really looking for is an IDE that  
has support for debugging CGI scripts internally. One that just  
happens to run on Mac OS X.

I haven't used it personally, but I believe that this is available in  
ActiveState's Komodo IDE, which runs on Windows, Mac OS X, or Linux.  
You can find out more and download a demo from their website:

You should also check to see if the IDE you currently use on Windows  
offers a Mac version. Some do.

Anyway, I wish you the best of luck with your new Mac! I've been  
programming perl on OS X for years now and have found it to be a very  
good developer platform. The command-line shell takes some getting  
used to if you've only used Windows's limited command shell, but it's  
a great tool once you understand it.

-- Mike Friedman

PS - On a non-perl note, I highly recommend Take Control eBooks if you  
want to learn more about your Mac.

They don't have one about the unix underpinnings or using the command- 
line, so you may also want to check out one of the "Unix on Mac OS X"  
books such as O'Reilly's _Learning Unix for Mac OS X Tiger_. There are  
others, and that one's a little outdated, but it's still almost  
entirely relevant for Leopard.

On Nov 17, 2008, at 6:30 PM, Walt Sanders wrote:

> Lara, I surely hope you had all this in a file to grab and send?!   
> My god what a mess to go through for a supposedly polished OS.  And  
> why doesn't Apple have this already configured, I'm wondering.
> Gotta go now and I'm away tomorrow, but will then try to digest your  
> instructions and give it a try.  I am at the point where I was about  
> to start advertising for a fixer to take my machine and make it  
> work.  But, this is new hope.  Many, many thanks and I'll report  
> back.  Walt.
> On Monday, at , Lara Ortiz de Montellano wrote:
>> 1. Re: perl on a mac (Walt Sanders)
> _______________________________________________
> SanFrancisco-pm mailing list
> SanFrancisco-pm at pm.org
> http://mail.pm.org/mailman/listinfo/sanfrancisco-pm

Michael Friedman                     HighWire Press
Phone: 650-725-1974                  Stanford University
FAX:   270-721-8034                  <friedman at highwire.stanford.edu>

More information about the SanFrancisco-pm mailing list