【问题标题】:Using a C++ library in Google Native Client在 Google Native Client 中使用 C++ 库
【发布时间】:2012-10-07 11:39:33
【问题描述】:

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

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

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

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

谢谢!

【问题讨论】:

    标签: c++ google-nativeclient


    【解决方案1】:

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

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

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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-07-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-09
        • 1970-01-01
        • 2015-01-05
        相关资源
        最近更新 更多