如何在Chrome Native Client中使用现有的C库?

时间:2014-11-09 01:42:11

标签: google-chrome google-chrome-app google-nativeclient

我是Chrome应用开发和Native Client / PNaCL管道新手。我对在chrome应用程序中使用现有C代码/库的过程感到有些困惑。常见问题和NaCL官方文档表明,使用现有代码很容易,也是开发Chrome应用程序的优势之一。

但是,还提到了nacl-ports,这是在Native Client应用程序中使用的移植C库的官方列表。

如果我使用了一些随机的C库,那么在我的Chrome应用程序中实际使用它的过程是什么?这个问题很愚蠢,但我对这个过程感到很困惑。我是否必须使用NaCL编译器重新编译源代码?我可以在SDK中找到这个位置吗?

FAQ还提到库中不允许使用forks,file i / o这样的东西,所以我必须重写任何执行这些操作的代码,这是正确的吗?

Bottomline:我有一个现有的C库。在Chrome应用程序中正确使用它并进行调用的过程是什么?

1 个答案:

答案 0 :(得分:2)

简短的回答是,您必须使用NaCl C编译器重新编译库。

您可能需要查看naclports:此存储库包含许多常见C库到Native Client的端口。您可以更轻松地浏览来源here

对于文件I / O,我们经常建议在移植现有代码时使用nacl_io库。这提供了一个POSIX接口(例如fopen / fclose / fread等)。使用nacl_io时,许多移植的库不需要修改。