… | |
… | |
882 | =item C<STATICPERL> |
882 | =item C<STATICPERL> |
883 | |
883 | |
884 | The directory where staticperl stores all its files |
884 | The directory where staticperl stores all its files |
885 | (default: F<~/.staticperl>). |
885 | (default: F<~/.staticperl>). |
886 | |
886 | |
|
|
887 | =item C<DLCACHE> |
|
|
888 | |
|
|
889 | The path to a directory (will be created if it doesn't exist) where |
|
|
890 | downloaded perl sources are being cached, to avoid downloading them |
|
|
891 | again. The default is empty, which means there is no cache. |
|
|
892 | |
|
|
893 | =item C<PERL_VERSION> |
|
|
894 | |
|
|
895 | The perl version to install - default is currently C<5.12.3>, but C<5.8.9> |
|
|
896 | is also a good choice (5.8.9 is much smaller than 5.12.3, while 5.10.1 is |
|
|
897 | about as big as 5.12.3). |
|
|
898 | |
887 | =item C<PERL_MM_USE_DEFAULT>, C<EV_EXTRA_DEFS>, ... |
899 | =item C<PERL_MM_USE_DEFAULT>, C<EV_EXTRA_DEFS>, ... |
888 | |
900 | |
889 | Usually set to C<1> to make modules "less inquisitive" during their |
901 | Usually set to C<1> to make modules "less inquisitive" during their |
890 | installation, you can set any environment variable you want - some modules |
902 | installation, you can set any environment variable you want - some modules |
891 | (such as L<Coro> or L<EV>) use environment variables for further tweaking. |
903 | (such as L<Coro> or L<EV>) use environment variables for further tweaking. |
892 | |
|
|
893 | =item C<PERL_VERSION> |
|
|
894 | |
|
|
895 | The perl version to install - default is currently C<5.12.3>, but C<5.8.9> |
|
|
896 | is also a good choice (5.8.9 is much smaller than 5.12.3, while 5.10.1 is |
|
|
897 | about as big as 5.12.3). |
|
|
898 | |
904 | |
899 | =item C<PERL_PREFIX> |
905 | =item C<PERL_PREFIX> |
900 | |
906 | |
901 | The prefix where perl gets installed (default: F<$STATICPERL/perl>), |
907 | The prefix where perl gets installed (default: F<$STATICPERL/perl>), |
902 | i.e. where the F<bin> and F<lib> subdirectories will end up. |
908 | i.e. where the F<bin> and F<lib> subdirectories will end up. |
… | |
… | |
1167 | twice the address space needed for stacks). |
1173 | twice the address space needed for stacks). |
1168 | |
1174 | |
1169 | If you use C<linuxthreads.old>, then you should also be aware that |
1175 | If you use C<linuxthreads.old>, then you should also be aware that |
1170 | uClibc shares C<errno> between all threads when statically linking. See |
1176 | uClibc shares C<errno> between all threads when statically linking. See |
1171 | L<http://lists.uclibc.org/pipermail/uclibc/2010-June/044157.html> for a |
1177 | L<http://lists.uclibc.org/pipermail/uclibc/2010-June/044157.html> for a |
1172 | workaround (And L<https://bugs.uclibc.org/2089> for discussion). |
1178 | workaround (and L<https://bugs.uclibc.org/2089> for discussion). |
1173 | |
1179 | |
1174 | C<ccache> support is also recommended, especially if you want |
1180 | C<ccache> support is also recommended, especially if you want |
1175 | to play around with buildroot options. Enabling the C<miniperl> |
1181 | to play around with buildroot options. Enabling the C<miniperl> |
1176 | package will probably enable all options required for a successful |
1182 | package will probably enable all options required for a successful |
1177 | perl build. F<staticperl> itself additionally needs either C<wget> |
1183 | perl build. F<staticperl> itself additionally needs either C<wget> |
… | |
… | |
1185 | it from working properly in a chroot - either use dash (and link it to |
1191 | it from working properly in a chroot - either use dash (and link it to |
1186 | F</bin/sh> inside the chroot) or link busybox to F</bin/sh>, using it's |
1192 | F</bin/sh> inside the chroot) or link busybox to F</bin/sh>, using it's |
1187 | built-in ash shell. |
1193 | built-in ash shell. |
1188 | |
1194 | |
1189 | Finally, you need F</dev/null> inside the chroot for many scripts to work |
1195 | Finally, you need F</dev/null> inside the chroot for many scripts to work |
1190 | - F<cp /dev/null output/target/dev> or bind-mounting your F</dev> will |
1196 | - either F<cp /dev/null output/target/dev> or bind-mounting your F</dev> |
1191 | both provide this. |
1197 | will provide this. |
1192 | |
1198 | |
1193 | After you have compiled and set up your buildroot target, you can copy |
1199 | After you have compiled and set up your buildroot target, you can copy |
1194 | F<staticperl> from the C<App::Staticperl> distribution or from your |
1200 | F<staticperl> from the C<App::Staticperl> distribution or from your |
1195 | perl f<bin> directory (if you installed it) into the F<output/target> |
1201 | perl F<bin> directory (if you installed it) into the F<output/target> |
1196 | filesystem, chroot inside and run it. |
1202 | filesystem, chroot inside and run it. |
1197 | |
1203 | |
1198 | =head1 RECIPES / SPECIFIC MODULES |
1204 | =head1 RECIPES / SPECIFIC MODULES |
1199 | |
1205 | |
1200 | This section contains some common(?) recipes and information about |
1206 | This section contains some common(?) recipes and information about |