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