Skip to content

Bug: postgis_compile.sh fails to build protobuf-c-1.4.0 due to missing autogen.sh #5

@Chenpi-Sakura

Description

@Chenpi-Sakura

postgis_compile.sh: Incorrect autogen.sh call for protobuf-c-1.4.0 tarball builds

Problem Description:

When I following the "How to install" guide for postgis-for-opentenbase, the postgis_compile.sh script fails during the compilation of protobuf-c-1.4.0. The script attempts to execute autogen.sh, but this file is not present in the protobuf-c-1.4.0 source tarball. This leads to a build failure.

Environment:

  • OpenTenBase: master branchb612d77
  • OS: Rocky Linux 8.10 (Green Obsidian) running on VMware® Workstation 17 Pro
  • postgis-for-opentenbase main branch5f6901a

Steps to Reproduce:

  1. Follow the "How to install" instructions in the postgis-for-opentenbase README.md up to the "Compile dependency & postgis" section.
  2. Execute ./postgis_compile.sh.
  3. Observe the build output, specifically during the protobuf-c-1.4.0 compilation phase.

Expected Behavior:

The protobuf-c-1.4.0 library should compile successfully, as its source tarball (v1.4.0) already contains a generated configure script, making the autogen.sh step unnecessary.

Actual Behavior / Error Log Snippet:

The build fails with an error similar to:

···
start compile protobuf-c-1.4.0......
/data/opentenbase/OpenTenBase/contrib/protobuf-c-1.4.0
chmod: cannot access 'autogen.sh': No such file or directory

Additional Information:

[opentenbase@sc contrib]$ ls ./protobuf-c-1.4.0
aclocal.m4   ChangeLog    configure.ac       LICENSE      Makefile.in  README.md
build-aux    config.h.in  Doxyfile.in        m4           protobuf-c   t
build-cmake  configure    DoxygenLayout.xml  Makefile.am  protoc-c     TODO

As shown, configure exists, but autogen.sh does not.

Suggested Fix :

The postgis_compile.sh script should be modified to skip the autogen.sh step for protobuf-c-1.4.0 and instead directly use the existing configure script.

Specifically, change these lines:

chmod +x autogen.sh
./autogen.sh
./configure --prefix=${prefix_args} CPPFLAGS=-I${prefix_args}/include LDFLAGS=-L${prefix_args}/lib

To:

# chmod +x autogen.sh
# ./autogen.sh
chmod +x configure
./configure --prefix=${prefix_args} CPPFLAGS=-I${prefix_args}/include LDFLAGS=-L${prefix_args}/lib

This adjustment allowed me to successfully compile and install PostGIS for OpenTenBase.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions