Hello All,
I has been using http://linuxtv.org/hg/~endriss/media_build_experimental for quite some time now. Until recently I never encountered a problem. Now I can't build any more:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
I am using Debian stable with Kernel 3.16.0-4-amd64. Some hundreds maybe thousands of symlinks are being created where the build fails.
Any solution or hint would be highly appreciated.
Best regards
Matthias
Am 18.10.2015 um 23:36 schrieb Matthias Lötzke:
To track this down go to the v4l directory and execute:
make -n links
which will show: echo creating symbolic links... find ../linux/drivers/media -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. find ../linux/sound -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. find ../linux/drivers/staging -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. find ../linux/drivers/misc -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=.
execute the find commands to see which one fails for further information use: ln -sfv instead of ln -sf
Regards Helmut
Hello Helmut,
Helmut Auer wrote:
All of them fail. Unfortunately adding -v does not provide any additional information.
find ../linux/drivers/media -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sfv --target-directory=. xargs: ln: Zu viele Ebenen aus symbolischen Links
But I found a curious solution. It works when I echo the xargs output and pipe it into sh. So this patch resolves my problem:
--- media_build_experimental/v4l/Makefile 2015-10-19 21:59:34.000000000 +0200 +++ media_build_experimental-ml/v4l/Makefile 2015-10-19 22:11:20.000000000 +0200 @@ -262,10 +262,10 @@
links:: @echo creating symbolic links... - @find ../linux/drivers/media -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. - @find ../linux/sound -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. - @find ../linux/drivers/staging -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. - @find ../linux/drivers/misc -name '*.[ch]' -type f -print0 | xargs -0n 255 ln -sf --target-directory=. + @find ../linux/drivers/media -name '*.[ch]' -type f -print0 | xargs -0n 255 echo ln -sf --target-directory=. | sh + @find ../linux/sound -name '*.[ch]' -type f -print0 | xargs -0n 255 echo ln -sf --target-directory=. | sh + @find ../linux/drivers/staging -name '*.[ch]' -type f -print0 | xargs -0n 255 echo ln -sf --target-directory=. | sh + @find ../linux/drivers/misc -name '*.[ch]' -type f -print0 | xargs -0n 255 echo ln -sf --target-directory=. | sh
config-compat.h:: $(obj)/.version .myconfig scripts/make_config_compat.pl perl scripts/make_config_compat.pl $(SRCDIR) $(obj)/.myconfig $(obj)/config-compat.h
This is strange. Anyhow my VDR is up and running again. Thanks for providing me a starting point to look at.
Best regards
Matthias