2017-11-03 5 views
0

私はクロスコンパイルされた組み込みswのビルド環境を構築しています。それはかなり古いので、Ubuntu 16.04でコンパイルすると、 "struct timevalの再定義"という競合が発生します。私は古いシステムからtime.hを比較していましたが、私はtimeval構造が古いlibcにまだないと考えました。libcをダウングレードすることは可能でしょうか?Linuxでlibc time.hをダウングレードする16.04

答えて

1

残念ながら、いいえ、あなたのディストリビューションでCライブラリをダウングレードすることはできません。あなたのシステムの他のすべてのプログラムはその新しいバージョンに対してコンパイルされていたので、それをダウングレードしようとすると、すべてが破損します( の基本プログラムはlsmvなどです)。

古いソースプロジェクトを修正するか、(Ubuntuのような)ディストリビューションの古いリリースを見つけてVMにインストールすることができます。

+0

私はpowerpcの組み込みアプリケーションをクロスコンパイルしていました。奇妙なことに、libcとの競合に遭遇しました。おそらくlibcは問題ではないかもしれません。 – user3414321

+0

クロスコンパイルの場合、ホストのディストリビューションは重要ではありません。あなたのプロジェクトが間違って '-I/usr/include'のようなことをすると、ディストリビューションのバージョンに関係なく壊れてしまうかもしれません。 –

+0

おそらくいくつかのシンボリックリンク。 – user3414321

関連する問題