0

我对 Native Client 完全陌生,不幸的是,我对“make”、编译等也很缺乏经验,所以我希望你能给我一些关于如何解决我的问题的基本信息。

所以我想要完成的是编译一个 C++ 库以便在 NaCl 应用程序中使用它。

首先,我的应用程序基于 Pepper 提供的示例,我只是使用附加的“make.bat”进行编译。

然后我下载了库的源代码,包含像'config'和'src'这样的文件夹,所以首先我必须调用'configure'、'make'、'make install'。但是我想让库用那个'make.bat'编译,所以我想我必须将库的复杂配置/Makefile脚本附加到我的NaCl应用程序的Makefile中?
怎么可能呢?
我在哪里可以找到有用的信息和/或帮助?

谢谢!

4

2 回答 2

2

您可以查看nacl ports项目,了解如何将库移植到 NaCl。NaCl 端口在 Linux 平台上效果最好,所以你最好有一个虚拟机或者直接在它上面工作。

移植库还有一个技巧。人们围绕编译器和链接器创建包装脚本。这些包装脚本调用 nacl 编译器和链接器,但它们还创建一个 shell 脚本,该脚本使用 sel_ldr 调用生成的 NaCl 可执行文件。返回此脚本而不是可执行文件(这是仅限 Linux 的技巧)。这种方式 configure 和 make 可以执行 NaCl 代码并且不会怀疑任何事情。因此可以使用正常的配置/制作过程,我们只需为这些包装脚本设置编译器和链接器。

由于您可能不打算自己开发库,因此最好编译一次,然后在您的 makefile 中使用它。添加-l带有库名称的-L选项和带有库目录路径的选项。您可以GLIBC_LDFLAGS在示例 makefile 中为这些选项使用变量。

于 2012-11-19T20:03:41.713 回答
1

您知道可以使用 Visual Studio 来开发 NaCl 应用程序吗?

http://mainroach.blogspot.com/2012/10/official-nacl-vs2010-add-in-available.html

于 2012-10-07T15:59:07.457 回答