aboutsummaryrefslogtreecommitdiff
path: root/doc/install/discussion.mdwn
blob: d60d511a579957429847e673dec092014734053b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
I am trying to install Ikiwiki version 2.1 from the source tarball.

It has all gone fairly smoothly until I try and run 'make'.

I.e. I have downloaded and unpacked ikiwiki_2.1.tar.gz and have run

    perl Makefile.PL

... which has run OK.


However when I then run 'make' I get:-

    LANG=C perl -I.  -T ikiwiki.out doc html --templatedir=templates \
                    --underlaydir=basewiki --nousedirs\
                    --wikiname="ikiwiki" --verbose \
                    --exclude=/discussion --no-discussion --userdir=users \
                    --plugin=goodstuff \
                    --plugin=haiku --plugin=polygen --plugin=fortune
    Failed to load plugin IkiWiki::Plugin::mdwn: IkiWiki version 2 required--this is only version 1.01 at IkiWiki/Plugin/mdwn.pm line 7.
    BEGIN failed--compilation aborted at IkiWiki/Plugin/mdwn.pm line 7.
    Compilation failed in require at (eval 4) line 2.
    BEGIN failed--compilation aborted at (eval 4) line 2.

    make: *** [extra_build] Error 1
 
How do I fix this?  There may be a bit of old ikiwiki left behind because
I did once have an older version installed but I thought I had removed all
traces of it.

> I'm quite sure that you still have some of it floating around, since
> ikiwiki seems to be loading an old IkiWiki.pm.
> 
> I don't understand though why it's not finding ./IkiWiki.pm first. The
> `-I` in the command line should make it look for files in the current
> directory first. --[[Joey]]

Well I have searched around and there really is nothing left that I can see.

I have removed *everything* found by 'find' and 'locate' that contains 'ikiwiki' except the tar file
and started from the beginning again and I see exactly the same error.

Is it that I maybe have a too old version of some of the Perl dependencies?  The only mdwn.pm files
that I have are the two I have just extracted from the new tar file.  There is *no* ./IkiWiki.pm file

> It's interesting that you say you have no ./IkiWiki.pm file, since one is
> included in the tarball. What happened to it, I wonder? 

so what/where is it loading to satisfy the ....... aaaaaaaaaaahhhhhhhhhhhhhh!!!!!!

I wasn't noticing the case of the filename, I'd missed the upper case W and guess what 'find' shows me:-

    /usr/local/lib/perl5/site_perl/5.8.8/IkiWiki.pm

Removing the above file has fixed my basic problem, now I'm getting lots of (non-fatal) errors
about "Can't locate Locale/gettext.pm", presumably that's a missing Perl module, I can probably
sort that out.


## Errors when running 'make test'

OK, I've now got it to compile and install and presumably it's basically working.  However there
are a few errors when I run 'make test'.  Several errors have disappeared by installing more Perl
stuff (specifically XML::SAX) 

> XML::SAX is a requirement of XML::Simple, which is a documented build
> requirement. (Only really needed if you'll be using subversion actually).

and one error disappeared when I did a 'make install', i.e. the 'make
test' has a test which requires IkiWiki to be installed first.

> Yes, that bug is already fixed in subversion for the next release
> --[[Joey]]

However I'm still getting the following error in 'make test':-

	t/pagename.................ok                                                
	t/pagespec_match...........ok 1/52Modification of a read-only value attempted at /home/chris/webdev/ikiwiki/blib/lib/IkiWiki.pm line 1023.
	# Looks like you planned 52 tests but only ran 23.
	# Looks like your test died just after 23.
	t/pagespec_match...........dubious                                           
	        Test returned status 255 (wstat 65280, 0xff00)
	DIED. FAILED tests 24-52
	        Failed 29/52 tests, 44.23% okay
	t/pagespec_merge...........ok                                                

> What version of perl are you using? It seems to have some problem with
> operator overloading.
> --[[Joey]]

home$ perl -v

This is perl, v5.8.8 built for i486-linux

## Installation in a non-root enviroment
I had a pretty hellacious time installing Ikiwiki (largely due to problems
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!


## Typing error?

[..] Mail::Sendmail, TimeDate, RPC::XML, [..]: should be DateTime? --[[vibrog]]

> No, TimeDate and DateTime are two different CPAN modules. Ikiwiki uses
> TimeDate. --[[Joey]]

ah, i still don't fully get it, though (the following is slightly shortened):

    $ perl -MCPAN -e shell
    cpan> install DateTime
    DateTime is up to date.
    cpan> install TimeDate
    Warning: Cannot install TimeDate, don't know what it is.
    Try the command
        i /TimeDate/
    to find objects with matching identifiers.

I'm trying to build IkiWiki on a fresh OpenSuse 10.3 box. I start out with

    $ perl -MCPAN -e 'install Text::Markdown URI HTML::Parser HTML::Template HTML::Scrubber'
    $ git clone git://git.ikiwiki.info/ ikiwiki && cd ikiwiki
    $ perl Makefile.PL && make

Are there other prerequisites?
I also installed all optional Perl modules, except TimeDate.

> TimeDate is also, confusingly, known as Date::Parse. Perhaps CPAN would
> do better with that name. --[[Joey]]

good. Date::Parse was already installed. --[[vibrog]]

`make` exits with `make: *** [extra_build] Aborted`, `make test` complains `cannot stat 'ikiwiki.man'` --[[vibrog]]

> If you show me the actual error message, and not just the last line make
> outputs, I might be able to help. --[[Joey]]

    ..
    rendering todo/calendar_--_archive_browsing_via_a_calendar_frontend.mdwn
    make: *** [extra_build] Segmentation fault

> So, perl on your system is segfaulting when running ikiwiki. What version
> of perl is this, and what version of what distribution? --[[Joey]]

    $ perl -V
    Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
    osname=linux, osvers=2.6.22, archname=i586-linux-thread-multi
    uname='linux ravel 2.6.22 #1 smp 20070921 22:29:00 utc i686 i686 i386 gnulinux '
    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'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef

Not sure how to provide proper version information for you.--[[vibrog]]