From 505d20761f86f75dbe978e607bd9e4f2c37a3b06 Mon Sep 17 00:00:00 2001 From: Yu Yang Date: Sun, 26 Mar 2017 17:07:47 +0800 Subject: [PATCH] Add toc --- .../01.inference_implementation.md | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/doc/design/multi_language_interface/01.inference_implementation.md b/doc/design/multi_language_interface/01.inference_implementation.md index 81dcdd437b0..1324bfcaa31 100644 --- a/doc/design/multi_language_interface/01.inference_implementation.md +++ b/doc/design/multi_language_interface/01.inference_implementation.md @@ -2,6 +2,21 @@ 本文档描述Paddle C-API的实现细节。Paddle C-API是多语言API的基础部分。Paddle需要暴露的API很多。先实现模型推断的API,通过模型推断API的实现作为一个样例,来进行讨论。至于为什么需要C-API,请参考[这里](./00.why_plain_c.md)。 +## Table of Contents + * [C-API 模型推断实现文档](#c-api-模型推断实现文档) + * [暴露接口原则](#暴露接口原则) + * [目录结构](#目录结构) + * [实现方式](#实现方式) + * [capi.h](#capih) + * [具体某种类型的头文件](#具体某种类型的头文件) + * [capi_private.h](#capi_privateh) + * [具体某种类型的实现文件](#具体某种类型的实现文件) + * [libpaddle_capi_shared.{so, dylib}](#libpaddle_capi_sharedso-dylib) + * [libpaddle_capi_whole.a](#libpaddle_capi_wholea) + * [examples](#examples) + * [编译选项](#编译选项) + + ## 暴露接口原则 1. 所有的接口均为C接口。即使用`extern "C"` @@ -104,3 +119,13 @@ struct CMatrix { ### examples 在样例中,使用`C99`开发了模型预测的样例代码。具体请参考[example/README.md](../../../paddle/capi/examples/README.md)。 + +## 编译选项 + +C-API的编译选项默认关闭,打开这个编译选项,需要在cmake的时候,设置 + +```bash +cmake ${YOUR_SOURCE_ROOT} -DWITH_C_API=ON -DWITH_PYTHON=OFF -DWITH_SWIG_PY=OFF +``` + +编译C-API的时候推荐Paddle不嵌入Python解释器,也不生成`SWIG`接口,具体原因参考[这里](./00.why_plain_c.md)。 -- GitLab