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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
|
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]]
> Sounds like the `Locale::gettext` perl module is there, but your perl
> installation is broken so that the accompnying so file is not there, or
> doesn't work. On my system I have
> `/usr/lib/perl5/Locale/gettext.pm` and
> `/usr/lib/perl5/auto/Locale/gettext.so` -- suspect your problem is with
> the second one.
>
> If you can't fix it, this problem could probably be worked around by
> unsetting all environment variables when running ikiwiki (`LANG`,
> `LC_ALL`, `LC_MESSAGES`). Then it won't try to load `Locale::gettext` at
> all. --[[Joey]]
---
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/Dreamhost]]. 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]]
---
I've tried a couple of times and my cpan has never recognised Bundle::IkiWiki. Is that section of the page still accurate? -- [[users/Jon]]
> Are you running perl with the environemnt settings specified on the page?
> Can you show how it fails to find the bundle? --[[Joey]]
>> I was not. Next time I build I will have to try that (I'll need to tweak it as I already override PERL5LIB; also I need to specify http proxies). Thanks for your help! -- [[users/Jon]]
---
##Further problems with Bundle::IkiWiki
I'm also having trouble with finding Bundle::IkiWiki. I've tried it with the environment settings and without them, and also using the interactive
form of the cpan command. I've also gone to cpan.org and searched -- eg
http://search.cpan.org/search?query=ikiwiki&mode=all
and no Bundle for IkiWiki comes up at all.
The error I get from the various cpan attempts is basically always the same:
Warning: Cannot install Bundle::IkiWiki, don't know what it is.
Try the command
i /Bundle::IkiWiki/
to find objects with matching identifiers.
When I try that command, BTW, it basically seems to find the same stuff I get when searching on the cpan web site.
This happens both on Ubuntu 8.04 and CentOS 5.1
Any help would be greatly appreciated... --kent
> Bundle::IkiWiki is included in ikiwiki itself, so of course cpan.org
> does not know about it.
>
> If you can show me exactly what command you ran (the tested, working
> commands on the parent page?) and how it failed, I can try to debug
> your problem.
Just today I noticed the "Bundle" subdirectory. What a moron I am! :-) Also, I misunderstood the PERL5LIB=`pwd` part --
I glibly thought it indicated the sink for the installation of the modules, rather than the source, and I was running
the cpan command from another window in a different directory, and just spiraled down into error...
> The real question in my mind is why you'd want to do this at all when
> using Ubuntu, which incldues packages of ikiwiki and all its
> dependencies. --[[Joey]]
For ubuntu 8.04:
$ ikiwiki --version
ikiwiki version 2.32.3ubuntu2.1
$
I was just trying to get the latest version.
In any case, thanks for the help, and thanks for the superb software. I really like it a lot.
|