web commit by http://vibrog.myopenid.com/
[ikiwiki] / doc / install / discussion.mdwn
1 I am trying to install Ikiwiki version 2.1 from the source tarball.
2
3 It has all gone fairly smoothly until I try and run 'make'.
4
5 I.e. I have downloaded and unpacked ikiwiki_2.1.tar.gz and have run
6
7     perl Makefile.PL
8
9 ... which has run OK.
10
11
12 However when I then run 'make' I get:-
13
14     LANG=C perl -I.  -T ikiwiki.out doc html --templatedir=templates \
15                     --underlaydir=basewiki --nousedirs\
16                     --wikiname="ikiwiki" --verbose \
17                     --exclude=/discussion --no-discussion --userdir=users \
18                     --plugin=goodstuff \
19                     --plugin=haiku --plugin=polygen --plugin=fortune
20     Failed to load plugin IkiWiki::Plugin::mdwn: IkiWiki version 2 required--this is only version 1.01 at IkiWiki/Plugin/mdwn.pm line 7.
21     BEGIN failed--compilation aborted at IkiWiki/Plugin/mdwn.pm line 7.
22     Compilation failed in require at (eval 4) line 2.
23     BEGIN failed--compilation aborted at (eval 4) line 2.
24
25     make: *** [extra_build] Error 1
26  
27 How do I fix this?  There may be a bit of old ikiwiki left behind because
28 I did once have an older version installed but I thought I had removed all
29 traces of it.
30
31 > I'm quite sure that you still have some of it floating around, since
32 > ikiwiki seems to be loading an old IkiWiki.pm.
33
34 > I don't understand though why it's not finding ./IkiWiki.pm first. The
35 > `-I` in the command line should make it look for files in the current
36 > directory first. --[[Joey]]
37
38 Well I have searched around and there really is nothing left that I can see.
39
40 I have removed *everything* found by 'find' and 'locate' that contains 'ikiwiki' except the tar file
41 and started from the beginning again and I see exactly the same error.
42
43 Is it that I maybe have a too old version of some of the Perl dependencies?  The only mdwn.pm files
44 that I have are the two I have just extracted from the new tar file.  There is *no* ./IkiWiki.pm file
45
46 > It's interesting that you say you have no ./IkiWiki.pm file, since one is
47 > included in the tarball. What happened to it, I wonder? 
48
49 so what/where is it loading to satisfy the ....... aaaaaaaaaaahhhhhhhhhhhhhh!!!!!!
50
51 I wasn't noticing the case of the filename, I'd missed the upper case W and guess what 'find' shows me:-
52
53     /usr/local/lib/perl5/site_perl/5.8.8/IkiWiki.pm
54
55 Removing the above file has fixed my basic problem, now I'm getting lots of (non-fatal) errors
56 about "Can't locate Locale/gettext.pm", presumably that's a missing Perl module, I can probably
57 sort that out.
58
59
60 ## Errors when running 'make test'
61
62 OK, I've now got it to compile and install and presumably it's basically working.  However there
63 are a few errors when I run 'make test'.  Several errors have disappeared by installing more Perl
64 stuff (specifically XML::SAX) 
65
66 > XML::SAX is a requirement of XML::Simple, which is a documented build
67 > requirement. (Only really needed if you'll be using subversion actually).
68
69 and one error disappeared when I did a 'make install', i.e. the 'make
70 test' has a test which requires IkiWiki to be installed first.
71
72 > Yes, that bug is already fixed in subversion for the next release
73 > --[[Joey]]
74
75 However I'm still getting the following error in 'make test':-
76
77         t/pagename.................ok                                                
78         t/pagespec_match...........ok 1/52Modification of a read-only value attempted at /home/chris/webdev/ikiwiki/blib/lib/IkiWiki.pm line 1023.
79         # Looks like you planned 52 tests but only ran 23.
80         # Looks like your test died just after 23.
81         t/pagespec_match...........dubious                                           
82                 Test returned status 255 (wstat 65280, 0xff00)
83         DIED. FAILED tests 24-52
84                 Failed 29/52 tests, 44.23% okay
85         t/pagespec_merge...........ok                                                
86
87 > What version of perl are you using? It seems to have some problem with
88 > operator overloading.
89 > --[[Joey]]
90
91 home$ perl -v
92
93 This is perl, v5.8.8 built for i486-linux
94
95 ## Installation in a non-root enviroment
96 I had a pretty hellacious time installing Ikiwiki (largely due to problems
97 in Perl) and documented them in [[tips/SharedHosting]].  I'd like to get feedback on the doc and also know if I should file a few bugs to make the installation process a little friendlier to non-root folks.  Thanks for the great app!
98
99
100 ## Typing error?
101
102 [..] Mail::Sendmail, TimeDate, RPC::XML, [..]: should be DateTime? --[[vibrog]]
103
104 > No, TimeDate and DateTime are two different CPAN modules. Ikiwiki uses
105 > TimeDate. --[[Joey]]
106
107 ah, i still don't fully get it, though (the following is slightly shortened):
108
109     $ perl -MCPAN -e shell
110     cpan> install DateTime
111     DateTime is up to date.
112     cpan> install TimeDate
113     Warning: Cannot install TimeDate, don't know what it is.
114     Try the command
115         i /TimeDate/
116     to find objects with matching identifiers.
117
118 I'm trying to build IkiWiki on a fresh OpenSuse 10.3 box. I start out with
119
120     $ perl -MCPAN -e 'install Text::Markdown URI HTML::Parser HTML::Template HTML::Scrubber'
121     $ git clone git://git.ikiwiki.info/ ikiwiki && cd ikiwiki
122     $ perl Makefile.PL && make
123
124 Are there other prerequisites?
125 I also installed all optional Perl modules, except TimeDate.
126
127 > TimeDate is also, confusingly, known as Date::Parse. Perhaps CPAN would
128 > do better with that name. --[[Joey]]
129
130 good. Date::Parse was already installed. --[[vibrog]]
131
132 `make` exits with `make: *** [extra_build] Aborted`, `make test` complains `cannot stat 'ikiwiki.man'` --[[vibrog]]
133
134 > If you show me the actual error message, and not just the last line make
135 > outputs, I might be able to help. --[[Joey]]
136
137     ..
138     rendering todo/calendar_--_archive_browsing_via_a_calendar_frontend.mdwn
139     make: *** [extra_build] Segmentation fault
140
141 Repeating `make` ends with this:
142
143     ..
144     scanning logo.mdwn
145     docwiki.setup: html/logo.html independently created, not overwriting with version from logo
146     BEGIN failed--compilation aborted at (eval 6) line 21.
147     make: *** [extra_build] Error 255
148
149 `make test` says
150
151     t/basewiki_brokenlinks.....ok 1/0install: cannot stat `ikiwiki.man': No such file or directory
152     make[1]: *** [extra_install] Error 1
153     #   Failed test at t/basewiki_brokenlinks.t line 8.
154     t/basewiki_brokenlinks.....ok 4/0# Looks like you failed 1 test of 7.        
155     t/basewiki_brokenlinks.....dubious   
156     ..
157     Failed 1/22 test scripts, 95.45% okay. 1/483 subtests failed, 99.79% okay.