Я пытаюсь построить цепочку инструментов с помощью crosstool-ng
, я все это установил, выбрал свой процессор, как описано в http://crosstool-ng.org/#download_and_usage, и я нахожусь на том этапе, где я могу построить свою инструментальную цепочку , Когда я вхожу ct-ng build
однако, он отменяет со следующей ошибкой:crosstool-ng can not fetch linux tarball
$ ct-ng build
[INFO ] Performing some trivial sanity checks
[INFO ] Build started 20170126.135517
[INFO ] Building environment variables
[EXTRA] Preparing working directories
[EXTRA] Installing user-supplied crosstool-NG configuration
[EXTRA] =================================================================
[EXTRA] Dumping internal crosstool-NG configuration
[EXTRA] Building a toolchain for:
[EXTRA] build = x86_64-pc-linux-gnu
[EXTRA] host = x86_64-pc-linux-gnu
[EXTRA] target = powerpc-e500v2-linux-gnuspe
[EXTRA] Dumping internal crosstool-NG configuration: done in 0.09s (at 00:02)
[INFO ] =================================================================
[INFO ] Retrieving needed toolchain components' tarballs
[EXTRA] Retrieving 'linux-4.3'
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Retrieving needed toolchain components' tarballs'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: do_kernel_get[scripts/build/kernel/[email protected]]
[ERROR] >> called from: main[scripts/[email protected]]
[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/local/share/doc/crosstool-ng/crosstool-ng-1.22.0/B - Known issues.txt'
[ERROR]
[ERROR] (elapsed: 0:31.10)
[00:31]/make: *** [build] Error 1
В build.log
я получаю следующее:
[EXTRA] Retrieving 'linux-4.3'
...
...
...
[DEBUG] Not at this location: "http://www.kernel.org/pub/linux/kernel/v4.x/longterm/v4.3/linux-4.3.zip"
[DEBUG] Trying 'http://www.kernel.org/pub/linux/kernel/v4.x/longterm/linux-4.3.zip'
[DEBUG] ==> Executing: 'wget' '--passive-ftp' '--tries=3' '-nc' '--...
[DEBUG] Not at this location: "http://www.kernel.org/pub/linux/kernel/v4.x/longterm/linux-4.3"
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Retrieving needed toolchain components' tarballs'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: do_kernel_get[scripts/build/kernel/[email protected]]
[ERROR] >> called from: main[scripts/[email protected]]
[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/local/share/doc/crosstool-ng/crosstool-ng-1.22.0/B - Known issues.txt'
[ERROR]
[ERROR] (elapsed: 0:31.10)
Я понимаю, что это не в состоянии извлечь ядро, есть способ, которым я можете загрузить его вручную и рассказать скрипт, где находится tarball?
Хорошо, я понял, что wget http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.3.tar.gz
потерпит неудачу, но wget --no-check-certificate http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.3.tar.gz
будет работать, чтобы загрузить tarball только через прокси. Так я скопировал /usr/bin/wget
в/USR/binwget ~ ориг and wrote a wrapper
/USR/BIN/wget`, который выглядит как:
#!/bin/bash
/usr/bin/wget~orig --no-check-certificate $1
, но это не похоже на работу либо, теперь я получаю следующее в build.log
:
[DEBUG] ==> Executing: 'wget' '--passive-ftp' '--tries=3' '-nc' '--progress=dot:binary' '-T' '10' '-O' '/home/ron/src/toolchain/work/.build/tarballs/linux-4.3.tar.xz.tmp-dl' 'http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.3.tar.xz'
[ALL ] wget~orig: missing URL
[ALL ] Usage: wget~orig [OPTION]... [URL]...
[ALL ]
[ALL ] Try `wget~orig --help' for more options.
[DEBUG] Not at this location: "http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.3.tar.xz"
[DEBUG] Trying 'http://www.kernel.org/pub/linux/kernel/v4.x/longterm/v4.3/linux-4.3.tar.xz'
[DEBUG] ==> Executing: 'wget' '--passive-ftp' '--tries=3' '-nc' '--progress=dot:binary' '-T' '10' '-O' '/home/ron/src/toolchain/work/.build/tarballs/linux-4.3.tar.xz.tmp-dl' 'http://www.kernel.org/pub/linux/kernel/v4.x/longterm/v4.3/linux-4.3.tar.xz'
[ALL ] wget~orig: missing URL
[ALL ] Usage: wget~orig [OPTION]... [URL]...
Как это автомагический знает, что мой первоначальный wget
двоичным теперь называется wget~orig
??? Andit пытается использовать это вместо моей обертки, которая теперь находится на /usr/bin/wget
(да, я добавил разрешения x и попробовал это тоже, wget http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.3.tar.gz
из оболочки (используя мой сценарий оболочки) теперь отлично работает ...