Here
are the notes I took last summer when I set up WW2 on a Mac running
Apple's Server software. This was 10.3.x, but I don't remember exactly
the x (perhaps 2?)
I did all the Perl stuff by hand (I never did have much luck with CPAN
module, and prefered to keep copies of the stalled archives in case I
needed to rebuild later with the same versions.) So there are pretty
explicit instructions for these, though the versions may vary if you
get them from CPAN today.
The details are sketchier at the bottom, I'm afraid. It did take some
tinkering to get everything right, and sometimes the order of things
was important. GD was one of the things that had to be handled
carefully, as I recall.
Hope this helps.
Install OS X Server Install Developer disk (include X11 SDK, can exclude examples and docs) Install X11 (get from apple OS X site) and X11 SDK (on developer disk) Run Software update (several times, until no new updates)
Start Web Services Turn off webperfcache turn on mod_perl
Install fink (I used 0.7) Allow it to update itself
Install fink packages: freetype2 (will add shlibs) libjpeg (adds shlibs and bin) libtiff (adds shlibs and bin) libwww (adds shlibs and bin) libpng3 (adds shlibs) netpbm (adds shlibs, bin, and netpbm10-shlibs) tetex-base and tetex-texmf (adds lots of stuff, can accept defaults unless you already have ghostscript installed, in which case select the system-ghostscript) tetex-dev texinfo expat
rehash run texconfig to reset paper size (pdftex paper set to letter)
get gd2, dvipng tth and preview into /usr/local/src
curl -O http://hutchinson.belmont.ma.us/tth/tth-noncom/tth_C.tgz curl -O http://umn.dl.sourceforge.net/sourceforge/dvipng/dvipng-1.1.tar.gz curl -O http://www.boutell.com/gd/http/gd-2.0.26.tar.gz curl -O http://www.tug.org/tex-archive/macros/latex/contrib/preview/preview.dtx curl -O http://www.tug.org/tex-archive/macros/latex/contrib/preview/preview.ins
Make gd2:
cd /usr/local/build tar vfxz ../src/gd-2.0.26.tar.gz ce gd-2.0.26 ./configure LDFLAGS=-L/sw/lib CPPFLAGS=-I/sw/include make sudo make install
Make tth:
cd /usr/local/build tar vfxz ../src/tth_C.tgz cd tth_C gcc -o tth tth.c sudo cp tth /usr/local/bin
Make preview:
cd /usr/local/build mkdir preview cp ../src/preview* . cd preview tex preview.ins latex preview.drv sudo mkdir /sw/share/texmf-local/tex sudo mkdir /sw/share/texmf-local/tex/latex sudo mkdir /sw/share/texmf-local/tex/latex/preview sudo mv *.cfg *.def *.sty /sw/share/texmf-local/tex/latex/preview/ sudo texhash
Make dvipng:
use dselect to install gd2 and gd2-shlib
cd /usr/local/build tar vfxz ../src/dvipng-1.1.tar.gz cd dvipng-1.1 ./configure LDFLAGS=-L/sw/lib CPPFLAGS=-I/sw/include make make test sudo make install
Make Perl modules: (get these from CPAN)
GD
cd /usr/local/Perl/build tar vfxz ../src/GD-2.12.tar.gz cd GD-2.12 perl Makefile.pl (answer /usr/local/lib for where is libgd, and return for others) make make test sudo make install
DBI
cd /usr/local/Perl/build tar vfxz ../src/DBI-1.42.tar.gz cd DBI-1.42 perl Makefile.pl (warnings about threads; I ignored these) make make test sudo make install
Data::UUID
cd /usr/local/Perl/build tar vfxz ../src/Data-UUID-0.11.tar.gz cd Data-UUID-0.11 perl Makefile.pl (accept defaults) make make test sudo make install
Date::Format amd Date::Parse
cd /usr/local/Perl/build tar vfxz ../src/TimeDate-1.16.tar.gz cd TimeDate-1.16 perl Makefile.pl make make test sudo make install
Mail::Sender
cd /usr/local/Perl/build tar vfxz ../src/Mail-Sender-0.8.10.tar.gz cd Mail-Sender-0.8.10 perl Makefile.pl (accept defaults) make make test sudo make install
IO::Stringy
cd /usr/local/Perl/build tar vfxz ../src/IO-stringy-2.109.tar.gz cd IO-stringy-2.109 perl Makefile.pl make make test sudo make install
MailTools:
cd /usr/local/Perl/build tar vfxz ../src/MailTools-1.62.tar.gz cd MailTools-1.62 perl Makefile.pl make make test sudo make install
MIME::Parser
cd /usr/local/Perl/build tar vfxz ../src/MIME-tools-5.411.tar.gz cd MIME-tools-5.411 perl Makefile.pl (accept defaults) make make test (failed one test; t/Ref #41; I ignored) sudo make install
HTML::Tagset
cd /usr/local/Perl/build tar vfxz ../src/HTML-Tagset-3.03.tar.gz cd HTML-Tagset-3.03 perl Makefile.pl make make test sudo make install
HTML::Parser
cd /usr/local/Perl/build tar vfxz ../src/HTML-Parser-3.36.tar.gz cd HTML-Parser-3.36 perl Makefile.pl make (accept defaults) make test sudo make install
URI
cd /usr/local/Perl/build tar vfxz ../src/URI-1.31.tar.gz cd URI-1.31 perl Makefile.pl make make test sudo make install
libwww
cd /usr/local/Perl/build tar vfxz ../src/libwww-perl-5.79.tar.gz cd libwww-perl-5.79 perl Makefile.pl make make test sudo make install
Apache::Test
cd /usr/local/Perl/build tar vfxz ../src/Apache-Test-1.11.tar.gz cd Apache-Test-1.11 perl Makefile.pl (warning about removing old version) make make test sudo make install
Apache::Request
cd /usr/local/Perl/build tar vfxz ../src/libapreq-1.3.tar.gz cd libapreq-1.3 perl Makefile.pl make make test (fails a test in t/inherit; I ignored and hoped for the best) sudo make install
Time::HiRes
cd /usr/local/Perl/build tar vfxz ../src/Time-HiRes-1.59.tar.gz cd Time-HiRes-1.59 perl Makefile.pl make make test (one test takes a long time, so be patient) sudo make install
XML::Parser::EasyTree
cd /usr/local/Perl/build tar vfxz ../src/XML-Parser-EasyTree-0.01.tar.gz cd XML-Parser-EasyTree-0.01 perl Makefile.pl make make test sudo make install
XML::Parser
cd /usr/local/Perl/build tar vfxz ../src/XML-Parser-2.34.tar.gz cd XML-Parser-2.34 perl Makefile.pl EXPATLIBPATH=/sw/lib EXPATINCPATH=/sw/include make make test sudo make install
XML::Writer
cd /usr/local/Perl/build tar vfxz ../src/XML-Writer-0.510.tar.gz cd XML-Writer-0.510 perl Makefile.pl make make test sudo make install
SOAP::Lite
cd /usr/local/Perl/build tar vfxz ../src/SOAP-Lite-0.60a.tar.gz cd SOAP-Lite-0.60a perl Makefile.pl (accept defaults; if you want other support, e.g., SSL, then make those first) make make test sudo make install
Data::ShowTable
cd /usr/local/Perl/build tar vfxz ../src/Data-ShowTable-3.3.tar.gz cd Data-ShowTable-3.3 perl Makefile.pl make (got an error about unterminated I<...>, but make seems to have succeeded, or, edit the ShowTable.pm file, go to line 724, and add the missing > in two places.) make test sudo make install
[When I installed WW2, it didn't use the DateTime module that it currently does. Installing this was quite a pain, since there were lots of prerequisite modules (a dozen or so), but I'm afraid I didn't take notes on it. Sorry! There wasn't anything unusual there, as I recall, just lots of things to track down.]
Start MySQL (Applications/Server/MySQL Manager)
Mysql modules
cd /usr/local/Perl/build tar vfxz ../src/Msql-Mysql-modules-1.2219.tar.gz cd Msql-Mysql-modules-1.2219 perl Makefile.pl (choose 1 for mysql only, and accept other defaults) make make test (you must have started mysql for this) (there is an error in tests/lib.pl that causes warning messages during the test. They can be ignored, or edit tests/lib.pl and remove the _ in the function prototypes at the bottom of the file.) sudo make install
Set passwords on the MySQL server:
mysql -u root mysql> UPDATE mysql.user SET Password=PASSWORD('my_secret_password') where User='root'; mysql> DELETE from mysql.user where HOST='localhost' AND User=''; mysql> FLUSH PRIVILEGES; mysql> GRANT SELECT ON *.* TO 'webworkRead'@'localhost' WITH GRANT OPTION; mysql> GRANT SELECT,INSERT,UPDATE,DELETE on *.* TO 'webworkWrite'@'localhost' WITH GRANT OPTION; mysql> FLUSH PRIVILEGES; mysql> EXIT;
[eventually I added passwords for webworkRead and webworkWrite, and modified the configuration file in webword-modperl/config]
Create groups wwadmin and wwdata in Workgroup Manager Download and install WW2 as in the instructions Set directory permissions as described
Set max and min spare servers to your desired number (I use 25 and 10) in httpf.conf
(set up mail aliases for wwfeedback, etc. See mail document p 26 for details)
add in local changes to httpd.conf
recompile mod_perl.c
restart apache
cross fingers and view ww2 home page in browser. make sample course, admin course, etc.
<| Post or View Comments |> |