Re: make installworld failing with locales due to broken symlinks

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Tue, 17 Nov 2015 12:04:34 +0100
On Sun, Nov 15, 2015 at 05:57:52PM -0800, NGie Cooper wrote:
> Hi,
> 	I run into this error when running `make installworld` with a world installed prior and during the projects/collation merge to head — reason is that the target for the symlink doesn’t exist. This might be fallout from recent build changes, or a side effect of the broken symlinks…
> Thanks,
> -NGie
> 
> install: //usr/share/locale/ca_IT.ISO8859-1/LC_CTYPE: No such file or directory
> *** Error code 71
> 
> Stop.
> make[5]: stopped in /usr/src/git/share/ctypedef
> *** Error code 1
> 
> Stop.
> make[4]: stopped in /usr/src/git/share
> *** Error code 1
> 
> Stop.
> make[3]: stopped in /usr/src/git
> *** Error code 1
> 
> Stop.
> make[2]: stopped in /usr/src/git
> *** Error code 1
> 
> Stop.
> make[1]: stopped in /usr/src/git
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/src/git
> $ ls -l /usr/share/locale/ca_IT.ISO8859-1/LC_CTYPE
> lrwxr-xr-x  1 root  wheel  27 Nov  1 16:24 /usr/share/locale/ca_IT.ISO8859-1/LC_CTYPE -> ../la_LN.ISO8859-1/LC_CTYPE
> $ readlink -f /usr/share/locale/ca_IT.ISO8859-1/LC_CTYPE
> /usr/share/locale/la_LN.ISO8859-1
> $ ls `readlink -f /usr/share/locale/ca_IT.ISO8859-1/LC_CTYPE`
> ls: /usr/share/locale/la_LN.ISO8859-1: No such file or directory

There is a bug in install(1) basically it tries to follow symlinks when
installing a file instead of replacing the symlink with the said file.

In the current case the problem is la_LN.ISO8859-1 has been removed before, so
the previous symlink is a dead symlink meaning install(1) fails to open it and
die

here is a proposal for a fix:
https://reviews.freebsd.org/D4191

Best regards,
Bapt

Received on Tue Nov 17 2015 - 10:04:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:01 UTC