Я пытаюсь построить gzip
для встроенной платформы на машине Linux. Я загрузил последний дистрибутив gzip от here. Затем make
требует сначала запустить программу configure
, чтобы настроить Makefile
для конкретной цели.Как перестроить GZIP?
Поэтому я запускаю configure
и получаю сообщение об ошибке. Проблема, кажется, представляет собой комбинацию нескольких вещей. Наша версия компилятора называется e-gcc
, поэтому я использовал следующую строку, и получил эту ошибку:
~/Projects/gzip-1.4$ ./configure CC=e-gcc
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... e-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in `/home/xyz/Projects/gzip-1.4':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
Очевидно, что C скомпилированные программы не могут работать, б/с, что является кросс-компилятор. В сообщении говорится, что я должен использовать опцию --host
, но проблема в том, что у нас действительно нет определенного имени в gcc. Тем не менее, я попробовал:
./configure CC=e-gcc --host=epiphany
и получила ошибку:
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
checking for a BSD-compatible install... /usr/bin/install -c
blah blah blah
checking build system type... x86_64-unknown-linux-gnu
checking host system type... Invalid configuration `epiphany': machine `epiphany' not recognized
configure: error: /bin/bash build-aux/config.sub epiphany failed
Последней вещь, я попытался обман и установка хозяина к arm
, как это ближе по духу к нашей архитектуре. Конфигурация пошел гораздо дальше, но в конечном счете не удалось, а со следующим сообщением:
checking for GNU libc compatible realloc... no
checking for rmdir... no
configure: error: in `/home/xyz/Projects/gzip-1.4':
configure: error: Your system lacks the rmdir function.
Please report this, along with the output of "uname -a", to the
[email protected] mailing list. To continue past this point,
rerun configure with SKIP_RMDIR_CHECK=yes.
E.g., ./configure SKIP_RMDIR_CHECK=yes
See `config.log' for more details.
Я теперь довольно невежественный о том, как продолжить. Какие-либо предложения?
Спасибо.Это действительно позволило завершить настройку. В любом случае мы выбрали другой путь, поэтому сейчас это менее важно. Мне просто интересно (и не сложно сказать из большого make-файла), какие там были включены специальные настройки ARM. В любом случае с этим make-файлом ARM я могу запустить сборку, но она попадает на ошибку файла заголовка (хотя это не связано с программой configure). – ysap