Символьные ссылки, созданные с относительными путями (то есть, где исходный путь не начинается с "/"), разрешаются относительно каталога, в котором находится ссылка. Это означает ссылку на "src / foo.c" в lang / Каталог golang / src / genericc / попытается преобразовать в lang / golang / src / genericc / src / foo.c, который, вероятно, не существует.
Решение: либо используйте абсолютный путь к исходным файлам, например:
ln -sf /path/to/src/* lang/golang/src/genericc/
или, чтобы подстановочный знак *
работал правильно с правильной командой, cd
к целевому каталогу, чтобы относительные пути работали так же, как при создании:
cd lang/golang/src/genericc
ln -sf ../../../../src/* ./