Linux From Scratch (7.9) Глава 6.10 не может соединиться
Вот шаг, на котором я нахожусь. Все прошло хорошо до этого момента, но после замены старого компоновщика новым и внесения изменений в файл specs, я получаю следующую ошибку при попытке скомпилировать dummy.c
/tools/libexec/gcc/i686-pc-linux-gnu/5.3.0/collect2 -plugin /tools/libexec/gcc/i686-pc-linux-gnu/5.3.0/liblto_plugin.so -plugin-opt=/tools/libexec/gcc/i686-pc-linux-gnu/5.3.0/lto-wrapper -plugin-opt=-fresolution=/tmp/cciBczi2.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /tools/lib/gcc/i686-pc-linux-gnu/5.3.0/crtbegin.o -L/tools/lib/gcc/i686-pc-linux-gnu/5.3.0 -L/tools/lib/gcc/i686-pc-linux-gnu/5.3.0/../../../../i686-pc-linux-gnu/lib /tmp/ccxbWIWi.o "" -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /tools/lib/gcc/i686-pc-linux-gnu/5.3.0/crtend.o /usr/lib/crtn.o
/tools/lib/gcc/i686-pc-linux-gnu/5.3.0/../../../../i686-pc-linux-gnu/bin/ld: cannot find : No such file or directory
collect2: error: ld returned 1 exit status
После многих поисков в Google, я видел другие сообщения о похожих проблемах на том же этапе, но все эти ошибки относятся к конкретным файлам, которые отсутствуют (обычно это файлы crt*.o), но эта ошибка отличается и ставит в тупик что он на самом деле не перечисляет файл, который он не может найти. Я убедился ld
и различные ссылки на него существуют и действуют, когда вы вызываете их. Я даже вырезал и вставил каталог в команду cd, и она работает (изначально я был сброшен /../../../../
в пути, но, кажется, работает так хорошо). Какой файл отсутствует или не был найден collect2?
1 ответ
Проблема заключалась в дополнительном пробеле в команде, выданной для компиляции файла.
Правильная команда:cc dummy.c -v -Wl,--verbose &>dummy.log
То, что я вошел, было:cc dummy.c -v -Wl, --verbose &>dummy.log
Эта очень маленькая разница означала четыре часа стягивания волос. Спасибо всем, кто предложил помощь!