This service is available only in Japanese-language.

sdk環境にC++の新しいライブラリを後から入れることができるのかどうか

古いyoctoのバージョンのsdkには、新しいC++のライブラリが入っていない場合があります。

(例)sumoのsdk
fatal error: filesystem.h: No such file or directory
#include <filesystem.h>

そこで2点ご質問がございます。

① この古いSDK環境に、手動でライブラリを導入することは難しいでしょうか?
② 最新のYoctoのsdkでアプリのバイナリイメージを作成し、古いYoctoで動いているプラットフォームで動かすことは可能でしょうか?

質問への回答となりますが
① 手動でライブラリの導入となる場合、c++17に対応したgcc8.2 が含まれるthud の meta/recipes-devtool/gcc 以下一式を新規に作成したレイヤー内に持ち込み、local.conf にGCCVERSION = "8.%" を指定して、meta/conf/distro/include/tcmode-default.inc 内で指定されたGCCVERSION ?= "7.%" を上書きすることで、gcc8.2 が構築されます。
core-image-minimal/core-image-sato はエラー無く構築可能で、gcc-runtime/8.2.0-r0/image/usr/include/c++/8.2.0/filesystem の生成も確認できております。

レシピによってはgcc7.3では構築できるがgcc8.2ではエラーになるものが皆無とは言い切れないのですが、その場合当該レシピのthud版との差異を確認しバックポートすることで対応可能ではないかと考えます。