2

このチュートリアルを使用してクロスコンパイラを作成しています。

gcc クロスコンパイラのチュートリアルに従い、newlib の移植に進みました。発行してコンパイルしようとするまで、すべてがうまくいきました

make all install

次のエラーが発生したとき:

WARNING: `makeinfo' is missing on your system.  You should only need it if
         you modified a `.texi' or `.texinfo' file, or any other file
         indirectly affecting the aspect of the manual.  The spurious
         call might also be the consequence of using a buggy `make' (AIX,
         DU, IRIX).  You might want to install the `Texinfo' package or
         the `GNU make' package.  Grab either from any GNU archive site.

コンパイルが停止します。

Ubuntu 11.10 を使用しています。

私が試してみました:

  • 異なる gcc、binutils、および newlib バージョンを使用する (約 5 つの異なる組み合わせ)

  • Texinfoのインストール

  • makeinfo パスの修正

私のクロスコンパイラは、もちろんライブラリを含めることができないというだけで、newlib がなくても完全に動作します。

4

2 に答える 2

1

makeinfo がインストールされていても、新しいバージョンを認識しない場合があります。次のパッチが機能します。以下をコピーして「configure.patch」として保存し、configure スクリプトがある場所に保存してから、「patch -p1 < configure.patch」と入力します。

--- newlib-1.14.0-bak/configure 2008-06-10 20:49:16.918036351 +0200
+++ newlib-1.14.0/configure 2008-06-10 21:21:35.750035824 +0200
@@ -3542,7 +3542,7 @@
     # For an installed makeinfo, we require it to be from texinfo 4.2 or
     # higher, else we use the "missing" dummy.
     if ${MAKEINFO} --version \
-       | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[2-9]|[5-9])' >/dev/null 2>&1; then
+       | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.([2-9]|[1-9][0-9])|[5-9])' >/dev/null 2>&1; then
       :
     else
       MAKEINFO="$MISSING makeinfo"
于 2013-05-06T20:22:30.693 に答える