On Fri, Jan 20, 2012 at 10:40 PM, Matt Waddel matt.waddel@linaro.org wrote:
Hi,
I have encountered a failure running live-build that I could use some help debugging.
Using the instructions in the LiveBuild wiki page:
https://wiki.linaro.org/Platform/DevPlatform/CrossCompile/LiveBuild
the procedure fails during the adduser step. The failure is:
I: create linaro user Can't set $0 with prctl(): Bad address at /usr/sbin/adduser line 86.
Here is the perl code around line 86 in adduser:
my %config; # configuration hash
my @defaults = ("/etc/adduser.conf"); my $nogroup_id = getgrnam("nogroup") || 65534; $0 =~ s+.*/++; <<<<<<<<< Line 86 >>>>>>>>>>>
This line attempts to set $0 to the substitution of a regular expression, it takes $_ as an argument and replaces the value matched by a regular expression .*/ with an empty string.
I don't pretend to understand the error message, it just seems to me that $0 is the implicit variable that contains the entire string when using regular expressions ($1... and so on are subsequent matches) and that $0 in that context might be read only.
Best regards ZK
This is the call to adduser from the 01-setup_user_linaro.chroot script that causes the problem:
adduser --gecos linaro --disabled-login linaro
The funny thing about this failure, if I chroot into the build area and run that command manually, everything works fine.
1st, what is that perl command doing? 2nd, anybody have any ideas on what would cause this failure?
TIA, Matt
linaro-dev mailing list linaro-dev@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-dev