in reply to Building perl in chroot
You don't need a chroot to do what you are trying to do, all you need to do is when running configure, include some flags to tell it where to build it, and what to build it as...
# for example... sh Configure -des ...other flags... -Dinstallprefix=/tmp/buildperlhere +/usr/ -Dprefix=/usr
By setting a different installprefix and prefix, you are telling the build system that when perl is built, you want it built as though it were going to be installed under /usr (i.e. binaries in /usr/bin, libraries in /usr/lib), but the installprefix tells it when you run 'make install' to actually put it under /tmp/buildperlhere/usr, so you will end up with binaries in /tmp/buildperlhere/usr/bin and libraries in /tmp/buildperlhere/usr/lib). You don't say what kind of packaging you are going to do, but for the sake of argument if you were just going to build tar-files, you could do cd /tmp/buildperlhere; tar cvfz perl.tgz usr and this would give you a tar file that could be untarred under / on the target machines, and you would have perl there as though it had been built under /usr.
One of the best ways to figure all this stuff out is to get a spec file that is used to build RPMs for RPM-based linux systems, and take a look at the %build and %install sections, they do basically exactly what you are trying to do, build and install perl in a temporary directory, but built so that the RPM will put things in the right places in the system directories.
| We're not surrounded, we're in a target-rich environment! |
|---|
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Building perl in chroot
by moot (Chaplain) on May 05, 2005 at 19:41 UTC |