当我尝试为Raspberry Pi2
构建时,选项为raspi-2
,对吗?
$ gyp_cobalt raspi-2
$ ninja -C out/raspi-2_debug cobalt
答案 0 :(得分:1)
目前还没有raspi-2配置,但raspi-1配置将在Raspberry Pi Zero,1,2和3上运行。它不会利用Raspberry上提供的Neon指令集Pi 2,但它会运行。 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-2'他们所指的是' raspi-1'。
然后有人可以修改gyp_configuration.gypi来为Raspberry Pi 2传递更合适的编译器标志。人们可能还想设置这些属性,以便在libwebp中启用Neon程序集优化:
'arm_version': 7,
'armv7': 1,
'arm_neon': 1,
答案 1 :(得分:0)
感谢。 我把它们放在一起。
$ 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/
它在哪里?