![Como posso resolver um problema de erro 404 na compilação ct-ng?](https://rvso.com/image/1552381/Como%20posso%20resolver%20um%20problema%20de%20erro%20404%20na%20compila%C3%A7%C3%A3o%20ct-ng%3F.png)
Eu obtive o crosstool-ng para openSuSE 42.2 via YaST (versão 1.21.0-4.22). A instalação do crosstool em si funcionou bem, mas ao tentar construir o crosscompiler com ct-ng build
, recebo a seguinte mensagem de erro:
[ALL ] --2018-02-01 21:36:27-- https://cbuild.validation.linaro.org/snapshots/binutils-linaro-2.25.0-2015.01-2
[ALL ] Connecting to cbuild.validation.linaro.org (cbuild.validation.linaro.org)|51.148.40.7|:443... connected.
[ALL ] HTTP request sent, awaiting response... 404 Not Found
[ALL ] 2018-02-01 21:36:27 ERROR 404: Not Found.
[ALL ]
[DEBUG] Not at this location: "http://cbuild.validation.linaro.org/snapshots/binutils-linaro-2.25.0-2015.01-2"
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Retrieving needed toolchain components' tarballs'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: do_binutils_get[scripts/build/binutils/binutils.sh@741]
[ERROR] >> called from: main[scripts/crosstool-NG.sh@584]
[ERROR] >>
[ERROR] >> For more info on this error, look at the file: 'build.log'
[ERROR] >> There is a list of known issues, some with workarounds, in:
[ERROR] >> '/usr/share/doc/packages/crosstool-ng/ct-ng.1.21.0/B - Known issues.txt'
O problema é: não consigo influenciar o conteúdo dos servidores web de Linaro. Então, existe uma solução alternativa para contornar esse problema?
Responder1
Você usa o ct-ng 1.21 e ele é muito antigo (25 de maio de 2015) e os links podem quebrar.
Eu compilo muito com ct-ng e construo muitas x-libs. Mas eu construo ct-ng a partir das fontes. E eu não uso HEAD ou MASTER. Em vez disso, tento a tag mais recente e, se falhar, escolho uma mais antiga e assim por diante até encontrar uma tag que funcione. A corrente que funciona para mim é "tags/crosstool-ng-1.23.0".
mkdir -p $HOME/_dev/_build
cd $HOME/_dev/_build
git clone https://github.com/crosstool-ng/crosstool-ng
cd crosstool-ng
# check out an older state, but they are not always error-free
#git checkout master # can have errors
git tag -l # list tags
git checkout tags/crosstool-ng-1.23.0 # choose last tag that works for you
./bootstrap
mkdir -p $HOME/_dev/_bin/ct-ng
./configure --prefix=$HOME/_dev/_bin/ct-ng
make
make install
export PATH="$PATH:$HOME/_dev/_bin/ct-ng/bin" # if you want to use ct-ng in current shell
cd $HOME
rm -rf $HOME/_dev/_build
Responder2
OK, eu mesmo poderia resolver o problema: tive que desmarcar as opções do compilador Linaro e recorrer ao gcc simples. Além disso, não consegui iniciar o processo de configuração e construção a partir do meu diretório inicial, pois a ferramenta de configuração armazenaria tudo em um arquivo chamado .config
, mas já existe um diretório chamado .config.