While trying to build the latest version of networkmanager on ABF, The build was plaugued with issues with a script that was used to get library symbols for the final link.
A typical form of loop such as:-
while read LINE; do sym+=`call_nm "$LINE"` done < <(cat sym_libs)
Would always fail with /dev/fd/63 File not found:
Investigation showed that anything using this < <(cat sym_libs) syntax failed with the same error.
Although I have not proved it I also have a suspicion that long pipelines may also cause this issue.
Builds performed outside docker worked perfectly.
After many attempts to resolve the issue which all failed I decided to try zsh.
The script ran perfectly in it’s original form. The output file was identical to the one produced by a local build.
It would seem then that the version of bash we are using in abf (and thus in docker containers) is incompatable with our docker containers.