Fixed the pod path in archive
[sdlgit/SDL_perl.git] / INSTALL
1 ------------------------------------------------------------------------------
2 | SDL Perl
3 | Install Information Doc
4 -------------------------
5
6 Well, there has to become a time when every project has a file dictating the 
7 best known way to install a program.
8
9 In this case, the time is now.
10
11 Table of Contents:
12  1 : System Requirements [ANAL1]
13  2 : Grabbing the necessary version of SDL Perl, release [PROD2]
14  3 : Same as above, but of the bleeding edge variety [EMO3]
15
16 ANAL1: System Requirements
17
18 For SDL Perl, you will, of course need a copy of libSDL. Which should be 
19 available via your system's usual method of grabbing this. Generally a 
20 package manager similar to Gentoo's Emerge, Fedora's yum, opensuse's YaST,
21 Debian|Ubuntu's apt, etc., etc., will have libSDL as the package. I (Katrina 
22 Payne) really have no idea the best method to get it working in the best 
23 practice method on Windows.
24
25 Anyways, oddly enough, SDL Perl's package on your system may not include all
26 the files required for this to properly install. Go figure, huh?
27
28 Additional libaries you need to make certain are on your systems:
29
30  * png
31  * jpeg
32  * smpeg
33  * OpenGL (GL)
34  * GLUT (GLU)
35  * SDL_image
36  * SDL_mixer
37  * SDL_net
38  * SDL_tiff
39  * SDL_gfx
40  * SDL_ttf
41
42 Yeah, there are allegedly tests to make sure these are on your system, 
43 however sometimes we are a little forgetful, and we miss them.
44
45 PROD2: Grabbing the Necessary Version of SDL Perl, release
46
47 This is kind of redundant at this point, as you more than likely have this 
48 file, or most likely do not need this section. However, for the sake of 
49 completeness, I am including this (perhaps this section should be the one with 
50 the ANAL1 find index?).
51
52 (skip to 0COOL if you have cpan set up on your system)
53
54 Anyways go onto your shell, assuming it is bash, and not something silly like 
55 tcsh, ksh, zsh or lispsh (in which case, you likely know what you are doing), 
56 type the following (FOR GREAT JUSTICE!):
57
58  $ perl -MCPAN -e "shell"
59
60 General convention states that prefixing a command with a '$' indicates you 
61 are doing this command in Userland. Do _not_ type the dollar sign. If you 
62 really do like typing dollar signs compulsively, we do have a donation button 
63 that you make use of.
64
65 You will be confronted with a large amount of options for how to properly set 
66 this up. As far as I (Katrina) am (is) aware, generally the defaults should be 
67 fine for most cases. In the odd cases they are not, well check the contacts 
68 information for more details. In the CONTACTS file (eventually).
69
70 0COOL
71
72 In the very odd occurance that you have already done this in this shell in 
73 some previous time in a spot that this user can see the required items for, 
74 you would simply type:
75
76  $ cpan
77
78 You will be presented with the CPAN prompt at this point. It is best if you
79 type the following command to make certain you are aware of the options 
80 involved in the matter as you are doing this, incase I (Katrina) screw up 
81 this file, and you can let me (Katrina) know fully well, how much of a screw 
82 up you think I made:
83
84  CPAN> help
85
86 Yeah, CPAN> denotes we are now inside CPAN BTW. And know you know, and 
87 knowing is half the battle.
88
89 After this, you should prolly make certain your kit is up to date. This can 
90 be done via:
91
92  CPAN> upgrade /.*/
93
94 I am certain some of the other more established monks will prolly be 
95 thwapping me with their canes (I am hoping for a high grade mahogany, made by 
96 the trees on the planet Malkior 7, where the trees are over 400 feet high. 
97 AND BREATHE FIRE! Built through the ancient blood rituals of the Malkior 
98 People, these canes are nigh indestructable and can bend the fabric of the 
99 universe--they are also a very fine material. Very impressive)
100
101 Alright now that your kit is insanely up to date you would type:
102
103  CPAN> install SDLPerl
104
105 Now you are ready to run and program SDLPerl applications.
106
107 EMO3: Same as Above, but The Bleeding Edge.
108
109 If you have already initially grab the git repo, jump do to [9CEREAL]
110
111 Well, in this case you will need git install onto the computer. This project,
112 at the time of writing this (20091022), uses github to manage its services. 
113 You can grab your copy of the git repo via:
114
115  $ git clone git://github.com/kthakore/SDL_perl.git
116
117 In case you did not read [PROD2], the '$' you have here indicates that this 
118 stuff is typed into a shell prompt in somewhere in userland. You do not 
119 actually need to type the '$' on the shell. Your shell provides the Big Money 
120 for you!... unless you are using something odd like tcsh... or know how to 
121 customised your prompt... or possibly 1006 other posibilities that have not 
122 really occured to me (Katrina) at the time of writing this.
123
124 9CEREAL
125
126 When you want to update your clone--as they need to be fed. I mean, you would 
127 not want to starve your clone. I mean, while I am not certain Geneva 
128 conventions apply to clones as they technically are not human, you know, not 
129 being created by God, and .'. not having souls (though you need to ask: do you 
130 really want a soulless monster displeased at you? I mean, it can do what it 
131 wants without worrying of eternal damnation). So to feed this monstrocity that
132 you have raised on your computer (which work by a wizard's magic anyways), 
133 you go into the directory that the git repo is in (in the git repo itself, not 
134 the directory that you did the `git clone` in), and type the following:
135
136  $ git pull
137
138 Now to build this, you type the arcane words (and no, it really does not 
139 matter what sign the moon is in... but if it makes you feel better, you can 
140 type this when the moon is in the sextan sign, just my own suggestion)
141
142  $ perl Build.PL
143  $ perl Build test && perl Build Bundle
144
145 Okay.. the first one, will build the require tools you need to work with to
146 install the wonder, that is the developmental version of SDL Perl.
147
148 The next one goes:
149
150 Okay, I am testing to make certain the system can handle me.
151
152 If that goes well (and _only_ if), it goes, "wow! It likes me! IT REALLY 
153 LIKES ME!"--after prancing around in front of the mirror and trying to do up 
154 her Perl and XS coloured hair in a nice looking manner, and choose a pretty 
155 dress to wear (she will try to be the best looking developmental perl libary 
156 on the system. Oh~ all the _other_ developmental perl libraries will be so 
157 jealous of her~).
158
159 Then if there is an issue getting herself all pretty this command will have 
160 her just stop there... your best bet is to give her comfort food. Of the 
161 kind of reports on the SDL Perl tracker, as I am not really certain if SDL 
162 Perl likes Hagan Daaz, but then I have not ask her, and well, you really are 
163 not in the place to ask. After all, she will likely blame you or your system 
164 for why she does not look pretty--programs that end up not compiling 
165 properly tend to have self esteem issues. Sending something to the tracker 
166 pretty much is a way of telling her you are interested... this usually helps 
167 her to stop watching old reruns of Inu Yasha (yeah, SDL Perl is still kind of 
168 young) and get back to feeling better.
169
170 Anyways, if all goes well and she feels all pretty looking, she just skips 
171 all the romance and moves into your system with perl Build install. Yush, 
172 that is right, you type in:
173
174  # perl Build install
175
176 Oh yeah, '#' is a form of notation that this command is to be typed in as the 
177 avatar user... or a super user account.
178
179 And... bob is your uncle.