0

运行cobalt时,会崩溃如下,好像需要一些字体文件,那么它需要什么字体,放在哪里呢?:

Caught signal: SIGSEGV(11)
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
SkFontMgr_CobaltDefaultFont() [0xcc6204]
.....
4

1 回答 1

0

你可以查看 crash 的回溯,你会发现它需要从content/data/fonts你运行 Cobalt 时获取字体,并且content/data/fonts是在构建完成 Cobalt 之后创建的out/linux-x11directfb_qa/content/data/fonts(x11 directfb build),所以你需要将整个内容文件从复制out/linux-x11directfb_qa/到你的钴的地方二进制铺设。

https://cobalt.googlesource.com/cobalt/+/e9b4b99dab6e774b8b6e63add74c352cc5dd395a/src/starboard/linux/shared/system_get_path.cc

bool SbSystemGetPath(SbSystemPathId path_id, char* out_path, int path_size) {
  if (!out_path || !path_size) {
    return false;
  }
  const int kPathSize = PATH_MAX;
  char path[kPathSize];
  path[0] = '\0';
  switch (path_id) {
    case kSbSystemPathContentDirectory: {
      if (!GetExecutableDirectory(path, kPathSize)) {
        return false;
      }
      if (SbStringConcat(path, "/content/data", kPathSize) >= kPathSize) {
        return false;
      }
      break;
    }
于 2017-02-10T02:51:41.567 回答