Я пробовал использовать процедуры, подробно описанные в ответе Джонатана Уэйкли и в вики-ответе сообщества. в разделе «Как установить GCC по частям с помощью GMP, MPFR, MPC, ELF без общих библиотек?», безрезультатно.
В частности, это приводит к ошибке компилятора, связанной с C. ++17 стандарт:
Код: Выделить всё
tar xzf gcc-4.9.4.tar.gz
cd gcc-4.9.4
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-4.9.4/configure --prefix=$HOME/GCC-4.9.4 --target=arm-wrs-vxworks
make -j
make install
компиляция gcc, configure: ошибка: невозможно вычислить суффикс объектных файлов: невозможно скомпилировать< /p>
Компиляция LibGCC завершилась ошибкой: невозможно вычислить суффикс объектных файлов: невозможно скомпилировать
Компиляция Gcc «невозможно вычислить суффикс объектных файлов: невозможно скомпилировать»
Я пытался возиться с переменной LD_LIBRARY_PATH, переключать различные параметры конфигурации и многое другое, но безуспешно. Сборка и установка binutils вручную с помощью target=arm-wrs-vxworks также не дала никакого эффекта. (Даже избавление от опции --target в конфигурации GCC не полностью исправляет сборку — вместо этого я получаю сообщение об отсутствии sys/ustat.h.)Я также нашел ссылки на программу Crosstool-NG, которая показалась мне многообещающей. Я опробовал его, и, к сожалению, оказалось, что он вообще не поддерживает цели VxWorks.
Я также ознакомился со следующей документацией:
https://gcc.gnu.org/install/build.html
https://crosstool-ng.github.io/docs/too ... struction/
https://preshing.com/20141119/how-to-bu ... -compiler/
Кажется, ни одна из процедур не работает. . Как будто половина версий этих инструментов имеет готовые сбои, а другая половина несовместима с тем, что мне нужно.
Может быть, я что-то упускаю? это бы объяснило это? (Если я могу предоставить дополнительную информацию, которая может помочь сузить проблему, дайте мне знать.)
Изменить: просмотр в objdir/arm-wrs-vxworks/libgcc/config. log, я вижу ошибку о том, что WIND_BASE не определен. Установка префиксного пути позволяет решить эту проблему, но затем сразу же после этого выдается еще одна ошибка -march=armv4: not Found и возникает тот же окончательный суффикс объектных файлов.
Редактирование 2: удаление и пересоздание папки сборки GCC с WIND_BASE, определенной как папка префикса, я вижу, что проблема с суффиксом объектных файлов наконец-то исчезла. Однако теперь, похоже, отсутствует заголовок . Я пока не уверен, откуда это взялось, но подозреваю, что это тесно связано с WIND_BASE.
Подробнее здесь: https://stackoverflow.com/questions/787 ... rm-vxworks
Мобильная версия