Обсуждение: Unable to compile postgresql-18.1
Hello there
I have tried to compile from source postgresql-18.1 but it fails and I get the following error:
gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
compilation terminated.
make[2]: *** [<builtin>: isolationtester.o] Error 1
make[2]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
compilation terminated.
make[2]: *** [<builtin>: isolationtester.o] Error 1
make[2]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
Last compilation of postgresql-18.0 worked perfectly without issue and on the same laptop
Any suggestions?
I am on : Slackware64 Linux 15.0 (Current)
Acer E5-771 laptop
On 2026-01-02 19:23 +0100, Ibrahim Shaame wrote:
> I have tried to compile from source postgresql-18.1 but it fails and I get
> the following error:
>
> gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
> compilation terminated.
> make[2]: *** [<builtin>: isolationtester.o] Error 1
> make[2]: Leaving directory
> '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
> make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
> make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
> make: *** [GNUmakefile:11: all-src-recurse] Error 2
>
> Last compilation of postgresql-18.0 worked perfectly without issue and on
> the same laptop
> Any suggestions?
>
> I am on : Slackware64 Linux 15.0 (Current)
> Acer E5-771 laptop
What are exact build commands you've executed?
Could be that LIBRARY_PATH contains an empty path. For example, I can
reproduce it with:
export LIBRARY_PATH=
make clean world-bin
--
Erik Wienhold
Hello Erik,
Thank you for the response. As for LIBRARY_PATH, I have always manually compiled postgresql and I don't explicitly mention the LIBRARY_PATH directory. That's why I am surprised why this time with this subversion doesn't work just as it worked in the last version.
Thanks
Ibrahim
On Sun, Jan 18, 2026 at 7:29 PM Erik Wienhold <ewie@ewie.name> wrote:
On 2026-01-02 19:23 +0100, Ibrahim Shaame wrote:
> I have tried to compile from source postgresql-18.1 but it fails and I get
> the following error:
>
> gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
> compilation terminated.
> make[2]: *** [<builtin>: isolationtester.o] Error 1
> make[2]: Leaving directory
> '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
> make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
> make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
> make: *** [GNUmakefile:11: all-src-recurse] Error 2
>
> Last compilation of postgresql-18.0 worked perfectly without issue and on
> the same laptop
> Any suggestions?
>
> I am on : Slackware64 Linux 15.0 (Current)
> Acer E5-771 laptop
What are exact build commands you've executed?
Could be that LIBRARY_PATH contains an empty path. For example, I can
reproduce it with:
export LIBRARY_PATH=
make clean world-bin
--
Erik Wienhold
I have manually directed the LD_LIBRARY_PATH to /usr/lib64 but I get the same error message.
Any suggestions?
Thanks
Ibrahim Shaame
On Wed, Jan 21, 2026 at 9:49 AM Ibrahim Shaame <ishaame@gmail.com> wrote:
Hello Erik,Thank you for the response. As for LIBRARY_PATH, I have always manually compiled postgresql and I don't explicitly mention the LIBRARY_PATH directory. That's why I am surprised why this time with this subversion doesn't work just as it worked in the last version.ThanksIbrahimOn Sun, Jan 18, 2026 at 7:29 PM Erik Wienhold <ewie@ewie.name> wrote:On 2026-01-02 19:23 +0100, Ibrahim Shaame wrote:
> I have tried to compile from source postgresql-18.1 but it fails and I get
> the following error:
>
> gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
> compilation terminated.
> make[2]: *** [<builtin>: isolationtester.o] Error 1
> make[2]: Leaving directory
> '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
> make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
> make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
> make: *** [GNUmakefile:11: all-src-recurse] Error 2
>
> Last compilation of postgresql-18.0 worked perfectly without issue and on
> the same laptop
> Any suggestions?
>
> I am on : Slackware64 Linux 15.0 (Current)
> Acer E5-771 laptop
What are exact build commands you've executed?
Could be that LIBRARY_PATH contains an empty path. For example, I can
reproduce it with:
export LIBRARY_PATH=
make clean world-bin
--
Erik Wienhold
As already requested, please answer following questions with lots of details;
What are exact build commands you've executed?
Le 21/01/2026 à 09:52, Ibrahim Shaame a écrit :
I have manually directed the LD_LIBRARY_PATH to /usr/lib64 but I get the same error message.Any suggestions?ThanksIbrahim ShaameOn Wed, Jan 21, 2026 at 9:49 AM Ibrahim Shaame <ishaame@gmail.com> wrote:Hello Erik,Thank you for the response. As for LIBRARY_PATH, I have always manually compiled postgresql and I don't explicitly mention the LIBRARY_PATH directory. That's why I am surprised why this time with this subversion doesn't work just as it worked in the last version.ThanksIbrahimOn Sun, Jan 18, 2026 at 7:29 PM Erik Wienhold <ewie@ewie.name> wrote:On 2026-01-02 19:23 +0100, Ibrahim Shaame wrote:
> I have tried to compile from source postgresql-18.1 but it fails and I get
> the following error:
>
> gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
> compilation terminated.
> make[2]: *** [<builtin>: isolationtester.o] Error 1
> make[2]: Leaving directory
> '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
> make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
> make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
> make: *** [GNUmakefile:11: all-src-recurse] Error 2
>
> Last compilation of postgresql-18.0 worked perfectly without issue and on
> the same laptop
> Any suggestions?
>
> I am on : Slackware64 Linux 15.0 (Current)
> Acer E5-771 laptop
What are exact build commands you've executed?
Could be that LIBRARY_PATH contains an empty path. For example, I can
reproduce it with:
export LIBRARY_PATH=
make clean world-bin
--
Erik Wienhold
Ibrahim Shaame <ishaame@gmail.com> writes:
> Thank you for the response. As for LIBRARY_PATH, I have always manually
> compiled postgresql and I don't explicitly mention the LIBRARY_PATH
> directory. That's why I am surprised why this time with this subversion
> doesn't work just as it worked in the last version.
There is nothing in that area that we changed between 18.0 and 18.1;
moreover, if we had broken something like that, it's highly unlikely
that nobody but you would have noticed. You need to look at what
changed in your build environment.
gcc seems to be getting confused by the fact that src/test/isolation
contains a subdirectory named "specs", but that's been there for
years. The most likely explanation is that some environment variable
is causing gcc to look in the current directory for its spec file
(although I don't see any documentation of such a variable in the
gcc manual). It's also plausible I guess that you have a corrupted
gcc installation.
regards, tom lane
Thank you Pierre. As for build command, I don't use any special commands. I just configure with some options and then issue "make" or "make world" commands, leaving everything else standard as it came with the sources.
Thanks again
Ibrahim
On Wed, 21 Jan 2026, 15:42 Pierre Forstmann, <pierre.forstmann@gmail.com> wrote:
As already requested, please answer following questions with lots of details;
What are exact build commands you've executed?
Le 21/01/2026 à 09:52, Ibrahim Shaame a écrit :I have manually directed the LD_LIBRARY_PATH to /usr/lib64 but I get the same error message.Any suggestions?ThanksIbrahim ShaameOn Wed, Jan 21, 2026 at 9:49 AM Ibrahim Shaame <ishaame@gmail.com> wrote:Hello Erik,Thank you for the response. As for LIBRARY_PATH, I have always manually compiled postgresql and I don't explicitly mention the LIBRARY_PATH directory. That's why I am surprised why this time with this subversion doesn't work just as it worked in the last version.ThanksIbrahimOn Sun, Jan 18, 2026 at 7:29 PM Erik Wienhold <ewie@ewie.name> wrote:On 2026-01-02 19:23 +0100, Ibrahim Shaame wrote:
> I have tried to compile from source postgresql-18.1 but it fails and I get
> the following error:
>
> gcc: fatal error: cannot read spec file ‘./specs’: Is a directory
> compilation terminated.
> make[2]: *** [<builtin>: isolationtester.o] Error 1
> make[2]: Leaving directory
> '/data/dwnlds/dwnld_slack/postgresql-18.1/src/test/isolation'
> make[1]: *** [Makefile:42: all-test/isolation-recurse] Error 2
> make[1]: Leaving directory '/data/dwnlds/dwnld_slack/postgresql-18.1/src'
> make: *** [GNUmakefile:11: all-src-recurse] Error 2
>
> Last compilation of postgresql-18.0 worked perfectly without issue and on
> the same laptop
> Any suggestions?
>
> I am on : Slackware64 Linux 15.0 (Current)
> Acer E5-771 laptop
What are exact build commands you've executed?
Could be that LIBRARY_PATH contains an empty path. For example, I can
reproduce it with:
export LIBRARY_PATH=
make clean world-bin
--
Erik Wienhold
Thank you Tom
I will try to change my environment ( reinstall GCC and will let you know.
Thanks again
Ibrahim
On Wed, 21 Jan 2026, 18:56 Tom Lane, <tgl@sss.pgh.pa.us> wrote:
Ibrahim Shaame <ishaame@gmail.com> writes:
> Thank you for the response. As for LIBRARY_PATH, I have always manually
> compiled postgresql and I don't explicitly mention the LIBRARY_PATH
> directory. That's why I am surprised why this time with this subversion
> doesn't work just as it worked in the last version.
There is nothing in that area that we changed between 18.0 and 18.1;
moreover, if we had broken something like that, it's highly unlikely
that nobody but you would have noticed. You need to look at what
changed in your build environment.
gcc seems to be getting confused by the fact that src/test/isolation
contains a subdirectory named "specs", but that's been there for
years. The most likely explanation is that some environment variable
is causing gcc to look in the current directory for its spec file
(although I don't see any documentation of such a variable in the
gcc manual). It's also plausible I guess that you have a corrupted
gcc installation.
regards, tom lane
Hello there.
Yes it was a problem with my environment. I don't know exactly what caused the problem. But after reinstall of the system the compilation went well and the problem is solved.
Thank you everyone for your help
Ibrahim Shaame
On Wed, 21 Jan 2026, 18:56 Tom Lane, <tgl@sss.pgh.pa.us> wrote:
Ibrahim Shaame <ishaame@gmail.com> writes:
> Thank you for the response. As for LIBRARY_PATH, I have always manually
> compiled postgresql and I don't explicitly mention the LIBRARY_PATH
> directory. That's why I am surprised why this time with this subversion
> doesn't work just as it worked in the last version.
There is nothing in that area that we changed between 18.0 and 18.1;
moreover, if we had broken something like that, it's highly unlikely
that nobody but you would have noticed. You need to look at what
changed in your build environment.
gcc seems to be getting confused by the fact that src/test/isolation
contains a subdirectory named "specs", but that's been there for
years. The most likely explanation is that some environment variable
is causing gcc to look in the current directory for its spec file
(although I don't see any documentation of such a variable in the
gcc manual). It's also plausible I guess that you have a corrupted
gcc installation.
regards, tom lane