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