[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 Benjamin Redelings changed: What|Removed |Added CC||benjamin.redelings at gmail dot co ||m --- Comment #9 from Benjamin Redelings --- I got this bug with binutils 2.32, so I do not think this is fixed. /usr/bin/x86_64-w64-mingw32-g++ -o rb.exe 'rb@exe/src_revlanguage_main.cpp.obj' -L/home/bredelings/win_root/mingw64/lib -Wl,-O1 -Wl,--start-group librb-core.a librb-revlanguage.a librb-lib.a -lboost_regex-mt -lboost_program_options-mt -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_date_time-mt -lboost_serialization-mt -pthread -mconsole -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -Wl,--end-group /usr/bin/x86_64-w64-mingw32-ld: cannot find -lstdc++ /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find -lpthread /usr/bin/x86_64-w64-mingw32-ld: cannot find -ladvapi32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lshell32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -luser32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lkernel32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o: Too many open files collect2: error: ld returned 1 exit status Versions look like this: $ uname -a Linux name 5.0.0-trunk-amd64 #1 SMP Debian 5.0.2-1~exp1 (2019-03-18) x86_64 GNU/Linux $ /usr/bin/x86_64-w64-mingw32-g++ -v Using built-in specs. COLLECT_GCC=/usr/bin/x86_64-w64-mingw32-g++ COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper Target: x86_64-w64-mingw32 Configured with: ../../src/configure --build=x86_64-linux-gnu --prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man' --infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir='/usr/lib/x86_64-linux-gnu' --libexecdir='/usr/lib/x86_64-linux-gnu' --disable-maintainer-mode --disable-dependency-tracking --prefix=/usr --enable-shared --enable-static --disable-multilib --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --libdir=/usr/lib --enable-libstdcxx-time=yes --with-tune=generic --with-headers=/usr/x86_64-w64-mingw32/include --enable-version-specific-runtime-libs --enable-fully-dynamic-string --enable-libgomp --enable-languages=c,c++,fortran,objc,obj-c++,ada --enable-lto --enable-threads=win32 --program-suffix=-win32 --program-prefix=x86_64-w64-mingw32- --target=x86_64-w64-mingw32 --with-as=/usr/bin/x86_64-w64-mingw32-as --with-ld=/usr/bin/x86_64-w64-mingw32-ld --enable-libatomic --enable-libstdcxx-filesystem-ts=yes Thread model: win32 gcc version 8.3-win32 20190428 (GCC) $ /usr/bin/x86_64-w64-mingw32-ld --version GNU ld (GNU Binutils) 2.32 Copyright (C) 2019 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) a later version. This program has absolutely no warranty. The ld command-line that is failing looks like this: /usr/bin/x86_64-w64-mingw32-ld -plugin /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper -plugin-opt=-fresolution=/tmp/ccXUMZS3.res -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -m i386pep --subsystem console -Bdynamic -o rb.exe /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib/crt2.o /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtbegin.o -L/home/bredelings/win_root/mingw64/lib -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32 -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib rb@exe/src_revlanguage_main.
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #10 from Benjamin Redelings --- Created attachment 11859 --> https://sourceware.org/bugzilla/attachment.cgi?id=11859&action=edit strace of ld while failing Here's an strace of the command line /usr/bin/x86_64-w64-mingw32-ld -plugin /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper -plugin-opt=-fresolution=/tmp/ccXUMZS3.res -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -m i386pep --subsystem console -Bdynamic -o rb.exe /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib/crt2.o /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtbegin.o -L/home/bredelings/win_root/mingw64/lib -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32 -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib rb@exe/src_revlanguage_main.cpp.obj -O1 --start-group librb-core.a librb-revlanguage.a librb-lib.a -lboost_regex-mt -lboost_program_options-mt -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_date_time-mt -lboost_serialization-mt -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 --end-group -lstdc++ -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/24723] New: Linker fails with "too many open files"
https://sourceware.org/bugzilla/show_bug.cgi?id=24723 Bug ID: 24723 Summary: Linker fails with "too many open files" Product: binutils Version: 2.32 Status: UNCONFIRMED Severity: normal Priority: P2 Component: ld Assignee: unassigned at sourceware dot org Reporter: benjamin.redelings at gmail dot com Target Milestone: --- When trying to link a large program, the linker fails with "Too many open files". This occurs with binutils 2.32, so the previous similar bugreport with 2.31 may not apply (#23573). /usr/bin/x86_64-w64-mingw32-g++ -o rb.exe 'rb@exe/src_revlanguage_main.cpp.obj' -L/home/bredelings/win_root/mingw64/lib -Wl,-O1 -Wl,--start-group librb-core.a librb-revlanguage.a librb-lib.a -lboost_regex-mt -lboost_program_options-mt -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_date_time-mt -lboost_serialization-mt -pthread -mconsole -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -Wl,--end-group /usr/bin/x86_64-w64-mingw32-ld: cannot find -lstdc++ /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find -lpthread /usr/bin/x86_64-w64-mingw32-ld: cannot find -ladvapi32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lshell32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -luser32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lkernel32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o: Too many open files collect2: error: ld returned 1 exit status Versions look like this: $ uname -a Linux name 5.0.0-trunk-amd64 #1 SMP Debian 5.0.2-1~exp1 (2019-03-18) x86_64 GNU/Linux $ /usr/bin/x86_64-w64-mingw32-g++ -v Using built-in specs. COLLECT_GCC=/usr/bin/x86_64-w64-mingw32-g++ COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper Target: x86_64-w64-mingw32 Configured with: ../../src/configure --build=x86_64-linux-gnu --prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man' --infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir='/usr/lib/x86_64-linux-gnu' --libexecdir='/usr/lib/x86_64-linux-gnu' --disable-maintainer-mode --disable-dependency-tracking --prefix=/usr --enable-shared --enable-static --disable-multilib --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --libdir=/usr/lib --enable-libstdcxx-time=yes --with-tune=generic --with-headers=/usr/x86_64-w64-mingw32/include --enable-version-specific-runtime-libs --enable-fully-dynamic-string --enable-libgomp --enable-languages=c,c++,fortran,objc,obj-c++,ada --enable-lto --enable-threads=win32 --program-suffix=-win32 --program-prefix=x86_64-w64-mingw32- --target=x86_64-w64-mingw32 --with-as=/usr/bin/x86_64-w64-mingw32-as --with-ld=/usr/bin/x86_64-w64-mingw32-ld --enable-libatomic --enable-libstdcxx-filesystem-ts=yes Thread model: win32 gcc version 8.3-win32 20190428 (GCC) $ /usr/bin/x86_64-w64-mingw32-ld --version GNU ld (GNU Binutils) 2.32 Copyright (C) 2019 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) a later version. This program has absolutely no warranty. The ld command-line that is failing looks like this: /usr/bin/x86_64-w64-mingw32-ld -plugin /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper -plugin-opt=-fresolution=/tmp/ccXUMZS3.res -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -m i386pep --subsystem console -Bdynamic -o rb.exe /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib/crt2.o /usr/lib/gcc
[Bug ld/24723] Linker fails with "too many open files"
https://sourceware.org/bugzilla/show_bug.cgi?id=24723 --- Comment #1 from Benjamin Redelings --- Created attachment 11860 --> https://sourceware.org/bugzilla/attachment.cgi?id=11860&action=edit An strace log of the linker running out of open files. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #12 from Benjamin Redelings --- Hi Nick, Thanks for the input. So far I've just looked at the strace log that I uploaded, and you are right that archives are getting opened repeatedly. There are three archive filesand they get opened a lot of times: * librb-core.a: opened 787 times * librb-revlanguage.a: opened 581 times * librb-lib.a: opened 20 times This seems to be related to the number of objects in each archive: * librb-core.a: 633 objects * librb-revlanguage.a: 594 objects * librb-lib: 19 objects However, its possible the number of opens is incomplete, since the later opens started failing due to too many open files. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #14 from Benjamin Redelings --- I tried running the linker under gdb, but apparently the debian package has stripped out all the debug symbols. Usually you can unstall them in a separate *-dbg package, but I don't see one for the mingw binutils. So, I can investigate how to compile the mingw ld from source, but if there is a good place to upload the archive files, I might wait on that. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #13 from Benjamin Redelings --- The build directory is about 74Mb compressed, or 38M if I strip out unneeded files. Would there be a good place to upload this? -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #16 from Benjamin Redelings --- Hi Nick, I was able to upload the files to here: https://www.dropbox.com/s/jyaapql2gj1r7br/gcc-win64.tar.gz?dl=0 Can you let me know if this works? $ cd gcc-win64 $ /usr/bin/x86_64-w64-mingw32-ld -plugin /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/lto-wrapper -plugin-opt=-fresolution=/tmp/ccXUMZS3.res -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt -m i386pep --subsystem console -Bdynamic -o rb.exe /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib/crt2.o /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtbegin.o -L/home/bredelings/win_root/mingw64/lib -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32 -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib rb@exe/src_revlanguage_main.cpp.obj -O1 --start-group librb-core.a librb-revlanguage.a librb-lib.a -lboost_regex-mt -lboost_program_options-mt -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_date_time-mt -lboost_serialization-mt -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 --end-group -lstdc++ -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o /usr/bin/x86_64-w64-mingw32-ld: cannot find -lstdc++ /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find -lpthread /usr/bin/x86_64-w64-mingw32-ld: cannot find -ladvapi32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lshell32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -luser32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lkernel32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingw32 /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc_s /usr/bin/x86_64-w64-mingw32-ld: cannot find -lgcc /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmoldname /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmingwex /usr/bin/x86_64-w64-mingw32-ld: cannot find -lmsvcrt /usr/bin/x86_64-w64-mingw32-ld: cannot find /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o: Too many open files $ /usr/bin/x86_64-w64-mingw32-ld -m i386pep --subsystem console -Bdynamic -o rb.exe /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib/crt2.o /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtbegin.o -L/home/bredelings/win_root/mingw64/lib -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32 -L/usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/../../../../x86_64-w64-mingw32/lib rb@exe/src_revlanguage_main.cpp.obj -O1 --start-group librb-core.a librb-revlanguage.a librb-lib.a -lboost_regex-mt -lboost_program_options-mt -lboost_thread-mt -lboost_system-mt -lboost_filesystem-mt -lboost_date_time-mt -lboost_serialization-mt -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 --end-group -lstdc++ -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt /usr/lib/gcc/x86_64-w64-mingw32/8.3-win32/crtend.o $ So removing the linker plugin arguments makes the command work. I can put the linked binary from the no-linker-plugin version of the command in the dropbox folder if that's helpful. Its about 47Mb, 9Mb compressed. -BenRI -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/23573] "Too many open files" and binutils 2.31.1-1
https://sourceware.org/bugzilla/show_bug.cgi?id=23573 --- Comment #18 from Benjamin Redelings --- Hi Nick, Thank you so much for looking into this. I reran the exact same command and now it works with the linker plugin just fine. I also check using /proc, and the linker process has about 30 open files. I have done some package upgrades, and it looks like a patch for Debug bug 928214 ("Configure LTO support correctly", https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=928214) may be the one that fixed the problem. In any case, for the benefit of any future triggerers of this bug: 1. The problem is probably with GCC, not binutils. 2. I was not using native mingw binutils, I was using Debian's linux-native cross compiler. Referring to the bug report above, one possible explanation is that * the LTO plugin was misconfigured in autoconf * this caused gcc to fall back to the lto-wrapper helper and NOT use the linker plugin * the lto-wrapper help creates N open file descriptors for an archive containing N objects. * the actual lto-plugin works fine. This is somewhat speculative, but might hopefully give someone a path to explore if they run into this again. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils