Forum archive 2000-2006

Hal Sadofsky - webwork2 on Mac OS 10.3 and 10.4

Hal Sadofsky - webwork2 on Mac OS 10.3 and 10.4

by Arnold Pizer -
Number of replies: 0
inactiveTopicwebwork2 on Mac OS 10.3 and 10.4 topic started 8/17/2005; 5:01:26 AM
last post 9/15/2005; 1:50:44 PM
userHal Sadofsky - webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/17/2005; 5:01:26 AM (reads: 1688, responses: 9)
I've just spent some time and trouble installing WeBWorK2 on an iMac running Panther (Mac OS 10.3). It took some effort, and I'll probably have to do it again because this is a test machine, not a production machine, so I took fairly detailed notes.

Is it a good idea to post these notes here (they are longish), or to try to add them to the wiki?

I've also been unsuccessful at installing on a similar iMac running Tiger (Mac OS 10.4). I'm not sure if this is the only problem, but I can't get Data::UUID to compile on that platform. I also have notes on this process, but if someone else has succeeded at this, that would be far more interesting than my failures!

Hal Sadofsky

<| Post or View Comments |>


userSam Hathaway - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/17/2005; 2:32:08 PM (reads: 1804, responses: 0)
Hal,

Go ahead and post your experiences in a new topic off of InstallNotes on the TWiki.

What errors do you get when compiling Data::UUID?

<| Post or View Comments |>


userHal Sadofsky - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/18/2005; 12:39:44 AM (reads: 1818, responses: 0)
Well, let's see. This is on OS 10.4.2, which has perl: 5.8.6.

And I'm not sure what else is relevant.

The symptom of things not working that I have is that the "webwork2" page doesn't load (although webwork2_files loads, and mod-perl is working).

Any hints would be just great! Has anyone successfully installed webworks on Mac OS 10.4?

Here is the output from making Data::UUID:

[adams:~/.cpan/build/Data-UUID-0.11] sadofsky% make cc -c -g -pipe -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -I/usr/local/include -Os -DVERSION="0.11" -DXS_VERSION="0.11" "-I/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE" -D_STDIR="/var/tmp" -D__darwin__ -D_DEFAULT_UMASK=0007 UUID.c In file included from UUID.xs:4: UUID.h:93: error: conflicting types for 'uuid_t' /usr/include/unistd.h:121: error: previous declaration of 'uuid_t' was here make: [UUID.o] Error 1 [adams:~/.cpan/build/Data-UUID-0.11] sadofsky%

And then SOAP::Lite builds just fine, but does dismally on 'make test':

[adams:~/.cpan/build/SOAP-Lite-0.60] sadofsky% make cp lib/UDDI/Lite.pm blib/lib/UDDI/Lite.pm cp lib/XML/Parser/Lite.pm blib/lib/XML/Parser/Lite.pm cp lib/XMLRPC/Transport/POP3.pm blib/lib/XMLRPC/Transport/POP3.pm cp lib/XMLRPC/Transport/TCP.pm blib/lib/XMLRPC/Transport/TCP.pm cp lib/SOAP/Transport/JABBER.pm blib/lib/SOAP/Transport/JABBER.pm cp lib/XMLRPC/Lite.pm blib/lib/XMLRPC/Lite.pm cp lib/SOAP/Transport/MAILTO.pm blib/lib/SOAP/Transport/MAILTO.pm cp lib/SOAP/Test.pm blib/lib/SOAP/Test.pm cp lib/Apache/SOAP.pm blib/lib/Apache/SOAP.pm cp lib/Apache/XMLRPC/Lite.pm blib/lib/Apache/XMLRPC/Lite.pm cp lib/XMLRPC/Transport/HTTP.pm blib/lib/XMLRPC/Transport/HTTP.pm cp lib/SOAP/Transport/MQ.pm blib/lib/SOAP/Transport/MQ.pm cp lib/SOAP/Transport/POP3.pm blib/lib/SOAP/Transport/POP3.pm cp lib/IO/SessionData.pm blib/lib/IO/SessionData.pm cp lib/XMLRPC/Test.pm blib/lib/XMLRPC/Test.pm cp lib/SOAP/Transport/TCP.pm blib/lib/SOAP/Transport/TCP.pm cp lib/SOAP/Transport/IO.pm blib/lib/SOAP/Transport/IO.pm cp lib/IO/SessionSet.pm blib/lib/IO/SessionSet.pm cp lib/SOAP/Transport/HTTP.pm blib/lib/SOAP/Transport/HTTP.pm cp lib/SOAP/Transport/LOCAL.pm blib/lib/SOAP/Transport/LOCAL.pm cp lib/SOAP/Lite.pm blib/lib/SOAP/Lite.pm cp lib/SOAP/Transport/FTP.pm blib/lib/SOAP/Transport/FTP.pm cp bin/SOAPsh.pl blib/script/SOAPsh.pl /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/SOAPsh.pl cp bin/stubmaker.pl blib/script/stubmaker.pl /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/stubmaker.pl cp bin/XMLRPCsh.pl blib/script/XMLRPCsh.pl /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/XMLRPCsh.pl Manifying blib/man1/SOAPsh.pl.1 Manifying blib/man1/XMLRPCsh.pl.1 Manifying blib/man3/UDDI::Lite.3pm Manifying blib/man3/XML::Parser::Lite.3pm Manifying blib/man3/XMLRPC::Transport::TCP.3pm Manifying blib/man3/XMLRPC::Transport::POP3.3pm Manifying blib/man3/SOAP::Transport::JABBER.3pm Manifying blib/man3/XMLRPC::Lite.3pm Manifying blib/man3/SOAP::Transport::MAILTO.3pm Manifying blib/man3/Apache::SOAP.3pm Manifying blib/man3/SOAP::Test.3pm Manifying blib/man3/Apache::XMLRPC::Lite.3pm Manifying blib/man3/XMLRPC::Transport::HTTP.3pm Manifying blib/man3/SOAP::Transport::POP3.3pm Manifying blib/man3/SOAP::Transport::MQ.3pm Manifying blib/man3/XMLRPC::Test.3pm Manifying blib/man3/SOAP::Transport::TCP.3pm Manifying blib/man3/SOAP::Transport::IO.3pm Manifying blib/man3/SOAP::Transport::HTTP.3pm Manifying blib/man3/SOAP::Lite.3pm Manifying blib/man3/SOAP::Transport::LOCAL.3pm Manifying blib/man3/SOAP::Transport::FTP.3pm [adams:~/.cpan/build/SOAP-Lite-0.60] sadofsky% make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/01-core.t t/02-payload.t t/03-server.t t/04-attach.t t/05-customxml.t t/06-modules.t t/07-xmlrpc_payload.t t/08-schema.t t/01-core..............ok t/02-payload...........ok 113/125Can't locate LWP/UserAgent.pm in @INC (@INC contains: /Users/sadofsky/.cpan/build/SOAP-Lite-0.60/blib/lib /Users/sadofsky/.cpan/build/SOAP-Lite-0.60/blib/arch /sw/lib/perl5 /sw/lib/perl5/darwin /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 . /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 .) at /Users/sadofsky/.cpan/build/SOAP-Lite-0.60/blib/lib/SOAP/Transport/HTTP.pm line 53. t/02-payload...........dubious Test returned status 2 (wstat 512, 0x200) DIED. FAILED tests 114-125 Failed 12/125 tests, 90.40% okay t/03-server............NOK 2# Failed test 2 in t/03-server.t at line 138 fail #2 # t/03-server.t line 138 is: $_ =~ /XML/ || $is_mimeparser ? ok(($result->faultstring || '') =~ /Failed to access class (Calculator)/) t/03-server............NOK 3# Failed test 3 in t/03-server.t at line 138 fail #3 t/03-server............NOK 6# Failed test 6 in t/03-server.t at line 148 fail #2 # t/03-server.t line 148 is: $_ =~ /XML/ || $is_mimeparser ? ok(($result->result || 0) == 7) t/03-server............NOK 7# Failed test 7 in t/03-server.t at line 148 fail #3 t/03-server............FAILED tests 2-3, 6-7 Failed 4/30 tests, 86.67% okay t/04-attach............Something wrong with MIME message: MIME::Parser: can't flush: at /System/Library/Perl/Extras/5.8.6/MIME/Parser.pm line 789.

t/04-attach............dubious Test returned status 255 (wstat 65280, 0xff00) DIED. FAILED tests 1-15 Failed 15/15 tests, 0.00% okay t/05-customxml.........ok t/06-modules...........ok 5/18 skipped: various reasons t/07-xmlrpc_payload....ok t/08-schema............ok Failed Test Stat Wstat Total Fail Failed List of Failed ----------------------------------------------------------------------------


t/02-payload.t 2 512 125 24 19.20% 114-125 t/03-server.t 30 4 13.33% 2-3 6-7 t/04-attach.t 255 65280 15 30 200.00% 1-15 5 subtests skipped. Failed 3/8 test scripts, 62.50% okay. 31/308 subtests failed, 89.94% okay. make: [test_dynamic] Error 2 [adams:~/.cpan/build/SOAP-Lite-0.60] sadofsky%

<| Post or View Comments |>


userDavide P. Cervone - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/18/2005; 4:49:19 PM (reads: 1810, responses: 2)
Hal:

You say:

 

The symptom of things not working that I have is that the "webwork2" page doesn't load (although webwork2_files loads, and mod-perl is working).

but does this mean there is an error produced for the ww2 page, or that it appears to load with no errors but is blank? If it is the latter, you probably need to recompile mod_perl.c. This has come up before (see http://webhost.math.rochester.edu/webworkdocs/discuss/msgReader$3083#3088), and the solution is to recompile mod_perl.c. This is easy to do, as I recall; google "mod_perl source download" and you should be able to find a copy. I used mod_perl 1.0, as I think 2.0 is for apache2.

As for Data::UUID, I would check line 93 of UUID.h in ~/.CPAN/Build/Data-UUID-0.11 against line 121 of /usr/include/unistd.h and see what the difference is. The error message suggests they should both be declaring uuid_t, but in different ways. You might need to edit UUID.h to conform to the system version.

I don't think that SOAP is used in the standard installation of WW (it is for the remote rendering deamon?), so you might ignore the errors in the test and go ahead with the installation anyway.

Good luck.

Davide

<| Post or View Comments |>


userHal Sadofsky - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/18/2005; 9:56:40 PM (reads: 1992, responses: 1)
Thanks very much for your response Davide!

No, it isn't a case of a blank page loading. Although I don't know if the mod_perl shipped with Os 10.4 works perfectly, I think Apple have fixed that particular problem.

I get an "internal apache error" (That particular server is down right now, and I won't be playing with it for two weeks, so I can't post exactly what it was right now.)

I will try your suggestion of editing the Data::UUID source when I get back to that server!

-Hal

<| Post or View Comments |>


userMichael Gage - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/18/2005; 10:37:54 PM (reads: 1807, responses: 3)
There is usually additional information in the apache error log file whenever the "internal apache error" message appears. That may help debug the problem once you get back to it in a few weeks.

<| Post or View Comments |>


userDavide P. Cervone - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
8/18/2005; 11:25:52 PM (reads: 2155, responses: 0)
it isn't a case of a blank page loading. Although I don't know if the mod_perl shipped with Os 10.4 works perfectly, I think Apple have fixed that particular problem.

They hadn't as of 10.3.9 (I haven't updated to 10.4 on the server yet). When I did my 10.3.9 update, it happily replaced my working mod_perl with a broken one. But a quick recompile fixed the problem again.

Davide

<| Post or View Comments |>


userHal Sadofsky - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
9/13/2005; 5:42:23 PM (reads: 1500, responses: 2)
The error log from my "internal apache error" shows the following:

[Tue Sep 13 14:41:21 2005] [error] Can't locate Data/UUID.pm in @INC (@INC contains: /usr/local/pg/lib /usr/local/webwork2/lib /System/Library/Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 . /usr/ /usr/lib/perl) at /usr/local/webwork2/lib/WeBWorK/Upload.pm line 63.nBEGIN failed--compilation aborted at /usr/local/webwork2/lib/WeBWorK/Upload.pm line 63.nCompilation failed in require at /usr/local/webwork2/lib/WeBWorK.pm line 55.nBEGIN failed--compilation aborted at /usr/local/webwork2/lib/WeBWorK.pm line 55.nCompilation failed in require at /usr/local/webwork2/lib/Apache/WeBWorK.pm line 36.nBEGIN failed--compilation aborted at /usr/local/webwork2/lib/Apache/WeBWorK.pm line 36.nCompilation failed in require at (eval 162) line 3.n [Tue Sep 13 14:41:21 2005] [error] Undefined subroutine &Apache::WeBWorK::handler called.n

The first line implicates the lack of Data:UUID (which I still can't get to compile).

The second line may just follow from the first problem, or maybe it is an independent problem - I'm too ignorant to be able to tell!

<| Post or View Comments |>


userDavide P. Cervone - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
9/13/2005; 8:18:23 PM (reads: 1588, responses: 1)
OK, I tried to compile Data::UUID under Tiger and had the same problems. Here's how you can get around it:

After unpacking that tar file, and running perl Makefile.pl, run make as usual. This will produce the error you saw before, but will also create the UUID.c file, which you will need to edit.

Make the following changes:

 

  • In UUID.c, move the line
    #include "UUID.h" (line 13)
    to above the line
    #line 1 "UUID.xs" (line 9)

 

In UUID.h, remove (or comment out) the line
#include <unistd.h> (line 7).

 

In Makefile, add -D_UUID_T after -DPERL_DARWIN on the CCFLAGS line (line 273).

Then run make again; it should now succeed (at least it did for me). It also passed make test.

Hope it works for you.

Davide

<| Post or View Comments |>


userHal Sadofsky - Re: webwork2 on Mac OS 10.3 and 10.4  blueArrow
9/15/2005; 1:50:44 PM (reads: 1697, responses: 0)
Davide!

Thanks so much for the suggestions about what changes to make to get Data::UUID compiled! They worked, and I now have webwork installed on the MacOS 10.4 machine that I want it on.

I haven't done much testing yet, but after I do that, I'll organize and update the install notes I wrote for the twiki on Tiger.

One caution for anyone else who is doing this - I first tried to install the 64bit version of MySQL. But I was unable to compile the DBD perl module. It failed with this message

Running Mkbootstrap for DBD::mysql () chmod 644 mysql.bs rm -f blib/arch/auto/DBD/mysql/mysql.bundle LD_RUN_PATH="/usr/lib" /usr/bin/perl myld env MACOSX_DEPLOYMENT_TARGET=10.3 cc -bundle -undefined dynamic_lookup -L/usr/local/lib dbdimp.o mysql.o -o blib/arc h/auto/DBD/mysql/mysql.bundle -L/usr/local/mysql/lib -lmysqlclient -lz -lm /usr/bin/ld: truncated or malformed archive: /usr/local/mysql/lib/libmysqlclient .a (ranlib structures in table of contents extends past the end of the table of contents, can't load from it) collect2: ld returned 1 exit status make: [blib/arch/auto/DBD/mysql/mysql.bundle] Error 1 /usr/bin/make -- NOT OK

Again, I'm too ignorant to know what this really means, but when I replace the 64bit version of MySQL with the 32bit version, I had no trouble installing DBD.

Hal

<| Post or View Comments |>