更新时间:2026-07-28 GMT+08:00
分享

准备ecpg开发相关组件

进行ecpg应用程序开发前,需确保开发环境已正确配置GaussDB客户端组件及编译工具链。

ecpg的开发依赖于特定的预处理器、动态链接库及头文件。核心组件的使用路径及编译引用规则如下表所示:

表1 ecpg核心组件路径和编译引用规则

组件分类

核心文件/库名

使用路径

编译/引用参数

功能

预处理器

ecpg

$GAUSSHOME/bin

将.pgc源码文件转化为标准 .c文件的二进制工具

通信与控制库

libecpg.so、libecpg.so.6和libecpg.so.6.4

$GAUSSHOME/lib

-lecpg

提供数据库连接管理、SQL语句执行及事务控制的底层实现。

类型处理库

libpgtypes.so、libpgtypes.so.6和libpgtypes.so.6.4

$GAUSSHOME/lib

-lpgtypes

提供数值、日期、时间戳、区间等复杂数据类型的运算与转换能力。

依赖头文件

sqlca.h、sqlda.h等

$GAUSSHOME/include/ecpg

-I $GAUSSHOME/include/ecpg

提供预编译期所需的宏定义、数据结构声明。

编译预处理工具准备:

  • ecpg开发需要GCC(GNU Compiler Collection)编译器进行编译,建议使用7.3.0版本。
  • ecpg客户端工具支持的操作系统与CPU架构(x86/ARM)与服务端发布的支持矩阵保持一致。

已知问题和解决方法:

动态库运行期寻址:操作系统默认不扫描GaussDB库目录。运行编译后的二进制文件前,必须将$GAUSSHOME/lib注入系统环境变量LD_LIBRARY_PATH中。

相关文档