DSM 5.1を搭載したSynology DS 214用のcrosstool-ngツールチェーンを構築する方法は?


0

私はgcc、DSM 5.1を搭載したSynology DS214(事実上恐ろしく時代遅れのLinux 3.2.xであるSynology OS)で「機能する」4.6、つまり、ボックスでアプリケーションをコンパイルできるようにしようとしています。クロスコンパイルされたgccと

env CC=/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-gcc \
LD=/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-ld \
RANLIB=/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-ranlib \
AR=/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-ar \
CFLAGS=" -I/usr/local/arm-marvell-linux-gnueabi/arm-marvell-linux-gnueabi/libc/include -mhard-float -mfpu=vfpv3-d16" \
LDFLAGS=" -L/usr/local/arm-marvell-linux-gnueabi/arm-marvell-linux-gnueabi/libc/lib" \
auto-apt run ./configure --host=arm-marvell-linux --target=arm-marvell-linux \
--prefix=$USER/syno-prefix --disable-shared --enable-obsolete
make 
make install

SynologyツールチェーンのUbuntu 14.10 AMD64上とのための推奨パラメータarmadaxpCPUとcrosstools-ngプロジェクトサイト)ツールチェーンでeglibc2.18、gcc4.6.4、Linuxの3.2.40architecture-levelS armv7-aarmadaxp(後者は、動作しないエラー「不明アーチ」)とCPUのチューニングについてcortex-a9そしてCFLAGS -mhard-float -mfpu=vfpv3-d16"、何時間も検索した後、必要なアーキテクチャパラメータに関する唯一のヒントが、armv7lを使用してMyCloudデバイスでtransmissonをコンパイルする方法のガイドだったためです

クロスコンパイルさgccれたツールチェーンとツールチェーンの両方がエラーを引き起こす

/usr/local/bin/ld: unrecognised emulation mode: armelf_linux_eabi
Supported emulations: armelf_linux armelf armelfb armelfb_linux
collect2: ld returned 1 exit status

(in config.logbinutils2.24やtrafficserver5.1.0 などのコンパイル時(LDFLAGS=" -marmelf_linux"configure causeの前に追加cc1: error: unrecognized command line option '-marmelf_linux')。エラーは系統的であるようです。示されたデバイスの一般的および特別なツールチェーンパラメータのハードウェア固有のパラメータを理解するには、どのように始めるのですか?

gcc実行すべきターゲットに関するいくつかの情報:

# cat /proc/cpuinfo 
Processor   : Marvell PJ4Bv7 Processor rev 2 (v7l)
processor   : 0
BogoMIPS    : 1064.96

processor   : 1
BogoMIPS    : 1064.96

Features    : swp half thumb fastmult vfp edsp vfpv3 tls 
CPU implementer : 0x56
CPU architecture: 7
CPU variant : 0x2
CPU part    : 0x584
CPU revision    : 2

Hardware    : Marvell Armada XP Development Board
Revision    : 0000
Serial      : 0000000000000000

私はARMと浮動小数点ユニット(主にWikipedia)について読むことから始めようとしましたが、どのパラメータが必要かを推測するためには、スターターにとって多くの時間がかかります。

EDIT 1:私はちょうどそれを設定するのが良いだろうと考え出しToolchain typeにオプションをCanadianではなくCross、その後私はまだcrosstools-ng必要としmachine、設定するオプション(エラーで失敗するInvalid configuration `': machine `' not recognizedCPUとアーキテクチャの詳細について不足している知識の私の問題に戻って私をもたらします) -そしてもちろん、「マシン」が実際に何を指しているのかを理解する方法はありません...


タイトルと最初の文が一致しません。「ネイティブコンパイラ」が語彙にないようです。「クロスコンパイラ」ではなく、ネイティブのARMコンパイラを構築しようとしているようです。-build設定で適切に指定する必要があります。airs.com/ian/configure/configure_6.html。エラーメッセージ/usr/local/bin/ldは、ビルドがホストのツールの代わりにビルドのツールを使用していることを示しています(つまり/usr/local/arm-marvell-linux-gnueabi/bin/arm-marvell-linux-gnueabi-ld
おがくず14


@sawdust crosstool-ngは、クロスおよびカナダのツールチェーンとコンパイラの両方を構築するツールです。明確化のためのリンクを追加しました
カールリヒター14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.