为 postgresql 编译 mysql_fdw?

为 postgresql 编译 mysql_fdw?

我正在尝试编译适用于 Postgresql 9.1+ 的 MySQL 外部数据包装器,在 Ubuntu 12.04 LTS 上,运行起来相当困难。

到目前为止我已经设法使用 git从 github 下载源代码,并根据说明将以下内容添加到我的/etc/profile路径中,希望这个东西能够编译:

# ^ The rest of the file ^
# POSTGRESQL Environment Vars
export PGDATA="/usr/local/pgsql/data"
export PGHOST="localhost"
export PGPORT="5432"
export PGLOG="/var/log/pgsql"
export PATH=$PATH:/usr/lib/postgresql/9.1/bin:/opt/lampp/bin

然后我按照我运行的文档

$ make USE_PGXS=1
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -fPIC -DLINUX_OOM_ADJ=0 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -fpic -I/usr/include/mysql -I. -I. -I/usr/include/postgresql/9.1/server -I/usr/include/postgresql/internal -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include/tcl8.5  -c -o mysql_fdw.o mysql_fdw.c
mysql_fdw.c: In function ‘mysqlPlanForeignScan’:
mysql_fdw.c:467:8: warning: ‘rows’ may be used uninitialized in this function [-Wuninitialized]
gcc -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -fPIC -DLINUX_OOM_ADJ=0 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -fpic -shared -o mysql_fdw.so mysql_fdw.o -L/usr/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -L/usr/lib/i386-linux-gnu  -Wl,--as-needed  -L/usr/lib/i386-linux-gnu -lmysqlclient -lpthread -lz -lm -lrt -ldl 

除了警告之外,我认为它编译正常...接下来我尝试安装它,但收到一些关于缺少一些文件的错误...

$ sudo make USE_PGPX=1 install
Makefile:35: ../../src/Makefile.global: No such file or directory
Makefile:36: /contrib/contrib-global.mk: No such file or directory
make: *** No rule to make target `/contrib/contrib-global.mk'.  Stop.

我是否需要编译所有 Postgres 并将此扩展包含在源代码中?因为源代码似乎指的是我所在目录上方的目录。

答案1

这是一个打字错误。

sudo make USE_PGPX=1 install
              ^^^^
              PGXS

相关内容