我正在尝试在 debian 挤压上安装 Poststat。 http://poststat.projects.postgresql.org 这个项目看起来不太老(2008 年),但我在安装它时遇到了一些困难。虽然看起来是个很有意思的项目,但是google是空的。我会在这里尝试总结一下我所做的(安装了postgres 8.4):
apt-get install fort77 postgresql-server-dev-8.4 libblas-dev liblapack-dev gfortran
首先,按照官网上的说法,解压tar.gz,进入f77stat目录,然后'make'。
然后,如果您安装了 libpq-dev,则在 debian 挤压上它还会在 /usr/bin/ 中安装它自己的 pg_config,它会报告错误信息。(参见http://postgresql.1045698.n5.nabble.com/Bug-report-Wrong-version-in-pg-config-td2123792.html)一种解决方案:
mv /usr/bin/pg_config pg_config_bak
ln -s /usr/lib/postgresql/8.4/bin/pg_config pg_config
这很重要,因为 Poststat 的 makefile 正在使用 pg_config 检索一些信息。
然后在主 Makefile 中有一行:
-lblas -llapack -lg2c
为 blas 和 lapack 安装这些软件包:
apt-get install libatlas-base-dev libatlas-dev libatlas-doc libatlas3gf-base
现在我的问题是关于g2c。根据谷歌,g2c 已过时,所以我编辑了 Makefile 并将 -lg2c 替换为 -lgfortrant
最后一步:在我的数据库中编译和导入新的统计函数。
make && sudo make install
psql -f poststat.sql <database>
可悲的是,
psql:poststat.sql:18: ERROR: unable to load the library
« /usr/lib/postgresql/8.4/lib/poststat.so » : /usr/lib/postgresql/8.4/lib/poststat.so:
undefined symbol: s_stop
任何想法 ?fortran 不是我的世界,并且软件包在 debian 中似乎对 fortran 发生了很大变化。我从 -lg2c 切换到 -lgfortrant 可能是错误的。实际上,删除此包含最终会产生相同的错误。