From 4115f870916f0fd05ebef300ed76b1776a8983a3 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Thu, 26 Apr 2007 18:51:11 +0000 Subject: * added explicit creation of /lib64 and /usr/lib64 if they do not exist on 64-bit stage1a systems on 64-bit hosts (that used to trigger problems on debian). git-svn-id: http://svn.openslx.org/svn/openslx/trunk@933 95ad53e4-c205-0410-b2fa-d234c58c8868 --- installer/OpenSLX/OSSetup/Engine.pm | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'installer') diff --git a/installer/OpenSLX/OSSetup/Engine.pm b/installer/OpenSLX/OSSetup/Engine.pm index f829e3ba..de4e00ae 100644 --- a/installer/OpenSLX/OSSetup/Engine.pm +++ b/installer/OpenSLX/OSSetup/Engine.pm @@ -365,14 +365,14 @@ sub readDistroInfo foreach my $r (sort keys %repository) { vlog 2, "repository '$r':"; foreach my $k (sort keys %{$repository{$r}}) { - vlog 2, "\t$k = '$repository{$r}->{$k}'"; + vlog 3, "\t$k = '$repository{$r}->{$k}'"; } } foreach my $s (sort keys %selection) { my @selLines = split "\n", $selection{$s}; vlog 2, "selection '$s':"; foreach my $sl (@selLines) { - vlog 2, "\t$sl"; + vlog 3, "\t$sl"; } } } @@ -464,8 +464,14 @@ sub stage1A_createBusyboxEnvironment "$self->{stage1aDir}/bin", 'busybox'); # determine all required libraries and copy those, too: - vlog 2, "calling slxldd for busybox"; - my $requiredLibsStr = `slxldd $openslxConfig{'share-path'}/busybox/busybox`; + vlog 1, _tr("calling slxldd for $busyboxName"); + my $slxlddCmd + = "slxldd $openslxConfig{'share-path'}/busybox/$busyboxName"; + vlog 2, "executing: $slxlddCmd"; + my $requiredLibsStr = `$slxlddCmd`; + if ($?) { + die _tr("slxldd couldn't determine the libs required by busybox! (%s)", $?); + } chomp $requiredLibsStr; vlog 2, "slxldd results:\n$requiredLibsStr"; foreach my $lib (split "\n", $requiredLibsStr) { @@ -480,6 +486,12 @@ sub stage1A_createBusyboxEnvironment foreach my $linkTarget (split "\n", $links) { linkFile('/bin/busybox', "$self->{stage1aDir}/$linkTarget"); } + if ($self->hostIs64Bit() && !-e "$self->{stage1aDir}/lib64") { + linkFile('/lib', "$self->{stage1aDir}/lib64"); + } + if ($self->hostIs64Bit() && !-e "$self->{stage1aDir}/usr/lib64") { + linkFile('/usr/lib', "$self->{stage1aDir}/usr/lib64"); + } } sub stage1A_setupResolver -- cgit v1.2.3-55-g7522