postgresql PG 16的AGE安装抛出错误:无法创建src/backend/parser/ag_scanner.c

nfeuvbwi  于 2023-06-22  发布在  PostgreSQL
关注(0)|答案(3)|浏览(187)

我已经安装了postgres-16-beta,并且我被分配到一个项目,以便能够在PostgreSQL 16中使用AGE。我已经配置了postgres:

./configure --prefix=$(pwd) --enable-cassert --enable-debug CFLAGS="-ggdb -Og -g3 -fno-omit-frame-pointer"

之后,make install命令被执行,并且它运行正常。
然后输入以下命令来安装AGE:

make PG_CONFIG=~/Documents/PostgreSQL/postgresql-16beta1/bin/pg_config install

但它会抛出这个错误:

/usr/bin/flex -b  -o'src/backend/parser/ag_scanner.c' src/backend/parser/ag_scanner.l
flex: could not create src/backend/parser/ag_scanner.c
make: *** [/home/user_name/Documents/PostgreSQL/postgresql-16beta1/lib/pgxs/src/makefiles/../../src/Makefile.global:770: src/backend/parser/ag_scanner.c] Error 1

已从此repo下载年龄。我用的是Fedora Linux 38。

h4cxqtbf

h4cxqtbf1#

尝试以root用户身份执行命令,如下所示:

sudo make PG_CONFIG=~/Documents/PostgreSQL/postgresql-16beta1/bin/pg_config install

如果这不起作用,您可以在src/backend/parser目录中使用以下命令手动构建ag_scanner. c:

flex -o ag_scanner.c ag_scanner.l
bjg7j2ky

bjg7j2ky2#

make PG_CONFIG=~/Documents/PostgreSQL/postgresql-16beta1/bin/pg_config install

上面的命令应该使用超级用户sudo运行。大多数安装AGE的帖子都建议这样做。

3hvapo4f

3hvapo4f3#

./configure --prefix=$(pwd) --enable-cassert --enable-debug CFLAGS="-ggdb -Og -g3 -fno-omit-frame-pointer"

在此命令后,尝试make命令并检查主目录中的bin文件夹。

ls

cd bin

然后在bin内检查pg_config文件init。然后尝试pwd命令来显示bin文件夹的路径
然后移动到age目录,然后使用

sudo make PG_CONFIG=path/to/bin/pg_config install

相关问题