Hello, bug-binutils, I encountered a couple of problems while building binutils-2.43.1 from the source file distribution but I managed to get the job done with an ugly workaround. First the build stopped at /libibery/filedescriptor.c. The dup2() function gets called but was not declared nor defined. This function is defined in unistd.h but unistd.h was not included so I decided to add #include <unistd.h> in the source myself. Now after this it stopped building on /libiberty/pex-unix.c. I got an error message about something like 'implicit declaration of open()' To get the compilation of per-unix.c done I had to add #include <sys/stat.h> and #include <fcntl.h> in the source. also in /bfd/plugin.c, /binutils/objdump.c, /binutils/ar.c, binutils/rename.c and /binutils/ldbuildid.c I got the same error message about 'implicit declaration of open()'. I've got this fixed by manually adding #include <fcntl.h> in each of the files. This workaround is, despite the fact that it does work, the ugly way of getting it to work. My #include's are not within #ifdef SOME_DEFINITION #endif statements and probably also not in the right spot in the program's hierarchy, but still, this way I've managed to get binutils built.