Closed suupic closed 3 years ago
编译成功,反馈一下: centos7环境cmake需要加几项参数, 如下:
cmake -DCMAKE_PREFIX_PATH=/usr/pgsql-13/ -DCMAKE_C_FLAGS="-std=c99" -DCMAKE_CXX_FLAGS="-std=c++11"
然后需要在pg_jieba.c中加一行定义_XOPEN_SOURCE来解决sigjmp_buf的问题 参考 https://stackoverflow.com/a/42167667
#define _XOPEN_SOURCE
#include "postgres.h"
即可顺利编译
cmake指定使用c99
cmake -DCMAKE_PREFIX_PATH=/usr/pgsql-13/ -DCMAKE_C_FLAGS="-std=c99"
make出错
[ 50%] Building C object CMakeFiles/pg_jieba.dir/pg_jieba.c.o In file included from /usr/pgsql-13/include/server/postgres.h:47:0, from /opt/download/pg_jieba/pg_jieba.c:14: /usr/pgsql-13/include/server/utils/elog.h:340:1: 错误:未知的类型名‘sigjmp_buf’ extern PGDLLIMPORT sigjmp_buf *PG_exception_stack; ^ /opt/download/pg_jieba/pg_jieba.c:247:1: 警告:使用‘DefineCustomConfigVariables’时先前既没有原型也没有定义 [-Wmissing-prototypes] DefineCustomConfigVariables() ^ make[2]: *** [CMakeFiles/pg_jieba.dir/pg_jieba.c.o] 错误 1 make[1]: *** [CMakeFiles/pg_jieba.dir/all] 错误 2