# protobuf.compile 库模块帮助文档

## protobuf 成员列表 <a id="protobuf" href="#protobuf">&#x23;</a>

### protobuf.compile <a id="protobuf.compile" href="#protobuf.compile">&#x23;</a>
Protobuf 编译器。  
aardio 可直接调用标准库中的 protobuf.parser

### protobuf.compile("--help") <a id="protobuf.compile" href="#protobuf.compile">&#x23;</a>
返回帮助文档

### protobuf.compile("--version") <a id="protobuf.compile" href="#protobuf.compile">&#x23;</a>
返回版本信息

### protobuf.compile() <a id="protobuf.compile" href="#protobuf.compile">&#x23;</a>
[返回对象:processPopenObject](https://www.aardio.com/zh-cn/docs/library-reference/process/popen.html#processPopenObject)

### protobuf.compile(language,outDir,workDir,...) <a id="protobuf.compile" href="#protobuf.compile">&#x23;</a>
调用 Protobuf 编译 *.proto 文件。  
返回进程输出字符串，错误输出字符串，无错误时只有一个返回值。  

@language 指定语言，例如 "cpp","java","python","csharp"。  
@outDir 指定生成的源码文件输出目录，设为 "."表示 @workDir 。  
@workDir 指定包含 proto 文件的工作目录或 proto 文件路径（可包含中文）。  
后面可添加不定个数的其他参数，或不定个数 proto 文件名。  
@outDir 或 proto 文件路径可使用相对于@workDir 的路径。  
@outDir 或除 @workDir 以外的 proto 文件路径都不能包含中文，  
这个是 protoc.exe 的限制，只能帮到这里了
