DSM 6.1を含むSynology DS214にLinux 3.2.40ヘッダーをインストールする方法は?

DSM 6.1を含むSynology DS214にLinux 3.2.40ヘッダーをインストールする方法は?

クロスコンパイルに疲れ、すでにgccSynology DiskStation DS214でDSM 6.1を使用して作業(クロスコンパイル)しているため、最初は空のDiskStationで実行されているLinuxバージョン用のLinuxヘッダーをインストールしようとしました/usr/include。一つある開発者向けのSynologyのテイクキットしかし、/usr/includecreate aのlinux/version.hヘッダーはLINUX_VERSION_CODE=132636与えられた3.2.40よりはるかに低いですuname -a。おそらく、これはツールキットのDSM 6.1バージョンと5.2バージョンの間の矛盾が原因である可能性があります。 DSMを5.2にダウングレードすることはオプションではなく、不可能かもしれません。

sudo make headers_install次の理由により、DiskStation の Linux 3.2.40 ソースの実行が失敗します。

$ sudo env CFLAGS="-mfloat-abi=hard -mfpu=vfpv3-d16 -I/usr/include" \
CPPFLAGS="-mfloat-abi=hard -mfpu=vfpv3-d16 -I /usr/include" \
CXXFLAGS="-mfloat-abi=hard-mfpu=vfpv3-d16 -I/usr/include"\
LDFLAGS="-mfloat-abi=hard-mfpu=vfpv3-d16" \
headers_install\を作成
CFLAGS="-mfloat-abi=hard -mfpu=vfpv3-d16 -I/usr/include" \
CPPFLAGS="-mfloat-abi=hard -mfpu=vfpv3-d16 -I /usr/include" \
CXXFLAGS="-mfloat-abi=hard-mfpu=vfpv3-d16 -I/usr/include"\
LDFLAGS="-mfloat-abi=hard-mfpu=vfpv3-d16" \
INSTALL_HDR_PATH=/usr
  CHKを含む/linux/version.h
  HOSTCCスクリプト/基本/fixdep
/opt/toolchain/include/features.h:434:0 に含まれるファイルには、
                 /opt/toolchain/include/sys/types.h:25で、
                 scripts/basic/fixdep.c:106から:
/opt/toolchain/include/gnu/stubs.h:7:29: 致命的なエラー: gnu/stubs-soft.h: そのファイルやディレクトリがありません。
 #含める
                             ^
コンパイルが終了します。
make[1]: *** [scripts/basic/fixdep] エラー 1
make: *** [scripts_basic]エラー2

などのその他のビルド設定binutilsが選択されており、make問題なく含まれません。最新バージョンのLinux 3.2.xである3.2.86でも同じ問題が発生します。-mfloat-abignu/stubs-soft.h

おそらくより簡単な方法があることを知っています。ほとんどの設定はクロスコンパイルと連携する必要があり、私がやろうとしている作業のユースケースはありませんが、どのように動作するのか、何ができないのかを理解したいと思います。しようとしています。

ベストアンサー1

おすすめ記事