When I try to build for Raspberry Pi2
, the option is raspi-2
, right?
$ gyp_cobalt raspi-2
$ ninja -C out/raspi-2_debug cobalt
When I try to build for Raspberry Pi2
, the option is raspi-2
, right?
$ gyp_cobalt raspi-2
$ ninja -C out/raspi-2_debug cobalt
現在、raspi-2 構成はありませんが、raspi-1 構成は Raspberry Pi Zero、1、2、および 3 で実行されます。Raspberry Pi 2 で使用可能な Neon 命令セットは利用されませんが、実行されます。Broadcom 2835 (RasPi 0,1) と 2836 (RasPi 2) はどちらも 32 ビット ARM チップであるため、命令セットの共通サブセットにコンパイルされたバイナリは両方のデバイスで実行する必要があります。
raspi-2 構成の作成はそれほど難しくありません。
$ cd src/starboard/raspi
$ cp -R 1/ 2
そして、src/starboard/rapi/2/gyp_configuration.gypi と src/starboard/rapi/2/gyp_configuration.py を変更して、「raspi-1」を参照する「raspi-2」を参照します。
次に、gyp_configuration.gypi をさらに変更して、Raspberry Pi 2 により適切なコンパイラ フラグを渡すことができます。これらのプロパティを設定して、libwebp で Neon アセンブリの最適化を有効にすることもできます。
'arm_version': 7,
'armv7': 1,
'arm_neon': 1,
ありがとう。私はそれをすべてまとめました。
$ cd ~/
$ git clone https://cobalt.googlesource.com/cobalt
$ cd cobalt/src/startboard/raspi
$ cp -R 1/ 2
$ cd 2/
$ vi gyp_configuration.gypi
行 37-40 を編集し、行 167-180 でrasp-1をrasp-2に変更します。
# RasPi 2 is ARMv7
'arm_version': 7,
'armv7': 1,
'arm_neon': 1,
....
'default_configuration': 'raspi-2_debug',
'configurations': {
'raspi-2_debug': {
'inherit_from': ['debug_base'],
},
'raspi-2_devel': {
'inherit_from': ['devel_base'],
},
'raspi-2_qa': {
'inherit_from': ['qa_base'],
},
'raspi-2_gold': {
'inherit_from': ['gold_base'],
},
それで、
$ vi gyp_configuration.py
14 行目を編集し、25 行目でrasp-1をrasp-2に変更します。
"""Starboard Raspberry Pi 2 platform configuration for gyp_cobalt."""
....
return _PlatformConfig('raspi-2')
次に、マニュアルの説明のように $RASPI_HOME を設定します。
$ export RASPI_HOME=~/raspi-tools
$ cd ~/cobalt/src/
$ cobalt/build/gyp_cobalt raspi-2
$ ls out/
./
../
raspi-2_debug/
raspi-2_devel/
raspi-2_gold/
raspi-2_qa/
$ ninja -C out/raspi-2_debug cobalt
しかし、clang++ コマンドが見つかりません。また、次のパスにllvm-buildがありません
cobalt/src/third_party/
それはどこにある ?