AW: Building PosgresSQL with LLVM fails on Solaris 11.4

Поиск
Список
Период
Сортировка
От Sacha Hottinger
Тема AW: Building PosgresSQL with LLVM fails on Solaris 11.4
Дата
Msg-id AM5PR04MB30738D1FB8C457DB98CBA317BB8DA@AM5PR04MB3073.eurprd04.prod.outlook.com
обсуждение исходный текст
Ответ на Re: Building PosgresSQL with LLVM fails on Solaris 11.4  (Andres Freund <andres@anarazel.de>)
Ответы Re: Building PosgresSQL with LLVM fails on Solaris 11.4  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers

Hi Andres

 

Thanks for your reply.

The reason I was suspicious with the warnings of the gcc build was, because gmake check reported 138 out of 202 tests to have failed. I have attached the output of gmake check.

 

After you mentioned that gcc did not report any errors, just warnings, we installed the build.

First, it seeemed to work and SELECT pg_jit_available(); showed "pg_jit_available" as "t" but the DB showed strange behaviour. I.e. not always, but sometimes running "show parallel_tuple_cost" caused postmaster to restart a server process.

We had to back to the previous installation.

 

It seems there is definitievly something wrong with the result gcc created.

 

Best regards

Sacha

 

Von: Andres Freund <andres@anarazel.de>
Datum: Donnerstag, 7. Dezember 2023 um 17:50
An: Sacha Hottinger <itdo@cndag.onmicrosoft.com>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Betreff: Re: Building PosgresSQL with LLVM fails on Solaris 11.4

Hi,

On 2023-12-07 13:43:55 +0000, Sacha Hottinger wrote:
> Thanks a lot.
> It now got much further but failed here with Sun Studio:
> …
> gmake[2]: Leaving directory '/opt/cnd/opt28-2_13.3_gmake_all_llvm_fixV2/src/test/perl'
> gmake -C backend/jit/llvm all
> gmake[2]: Entering directory '/opt/cnd/opt28-2_13.3_gmake_all_llvm_fixV2/src/backend/jit/llvm'
> /opt/developerstudio12.6/bin/cc -m64 -xarch=native -Xa -v -O  -KPIC -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -I/usr/include  -I../../../../src/include    -c -o llvmjit.o llvmjit.c
> "llvmjit.c", line 493: warning: argument #1 is incompatible with prototype:
>         prototype: pointer to void : "../../../../src/include/jit/llvmjit_emit.h", line 27
>         argument : pointer to function(pointer to struct FunctionCallInfoBaseData {pointer to struct FmgrInfo {..} flinfo, pointer to struct Node {..} context, pointer to struct Node {..} resultinfo, unsigned int fncollation, _Bool isnull, short nargs, array[-1] of struct NullableDatum {..} args}) returning unsigned long
> g++ -O -std=c++14 -KPIC -D__STDC_LIMIT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -I/usr/include  -I../../../../src/include    -c -o llvmjit_error.o llvmjit_error.cpp
> g++: error: unrecognized command-line option ‘-KPIC’; did you mean ‘-fPIC’?
> gmake[2]: *** [<builtin>: llvmjit_error.o] Error 1
> gmake[2]: Leaving directory '/opt/cnd/opt28-2_13.3_gmake_all_llvm_fixV2/src/backend/jit/llvm'
> gmake[1]: *** [Makefile:42: all-backend/jit/llvm-recurse] Error 2
> gmake[1]: Leaving directory '/opt/cnd/opt28-2_13.3_gmake_all_llvm_fixV2/src'
> gmake: *** [GNUmakefile:11: all-src-recurse] Error 2

I don't know where the -KPIC is coming from. And TBH, I don't see much point
trying to fix a scenario involving matching sun studio C with g++.


> With ggc it fails at the same step as before.
> I have attached the log files of the SunStudio and gcc runs to the email.

I don't see a failure with gcc.

The warnings are emitted for every extension and compilation succeeds.

Greetings,

Andres Freund


This email and any files transmitted with it are confidential and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the system manager.

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Fix bug with indexes on whole-row expressions
Следующее
От: "Daniel Verite"
Дата:
Сообщение: Re: Built-in CTYPE provider