Сбой настройки postgresql без 64-разрядного целочисленного типа

#postgresql #macos

#postgresql #macos

Вопрос:

На mac. Скачал $ curl -O http://ftp.postgresql.org/pub/source/v9.6.9/postgresql-9.6.9.tar.bz2 и извлек его.

Выполняется $ ./configure --prefix='/Users/me/.pyembedpg/9.6.9'

сбой с

 ...
checking for getopt_long... yes
checking whether sys_siglist is declared... yes
checking for syslog... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking for opterr... yes
checking for optreset... yes
checking for strtoll... yes
checking for strtoull... yes
checking for rl_completion_append_character... yes
checking for rl_completion_matches... yes
checking for rl_filename_completion_function... yes
checking for rl_reset_screen_size... no
checking for append_history... no
checking for history_truncate_file... yes
checking test program... ok
checking whether long int is 64 bits... no
checking whether long long int is 64 bits... no
configure: error: Cannot find a working 64-bit integer type.
  

Добавление журнала по запросу:

 configure:13563: checking whether long int is 64 bits
configure:13621: gcc -o conftest -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -Wno-unused-command-line-argument -O2 -I/usr/local/opt/openssl@1.1/include  -L/usr/local/opt/openssl@1.1/lib  conftest.c -lz -lreadline -lm  >amp;5
conftest.c:165:5: warning: no previous prototype for function 'does_int64_work' [-Wmissing-prototypes]
int does_int64_work()
    ^
conftest.c:165:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int does_int64_work()
^
static
conftest.c:179:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
main() {
^
conftest.c:180:3: error: implicitly declaring library function 'exit' with type 'void (int) __attribute__((noreturn))' [-Werror,-Wimplicit-function-declaration]
  exit(! does_int64_work());
  ^
conftest.c:180:3: note: include the header <stdlib.h> or explicitly provide a declaration for 'exit'
2 warnings and 1 error generated.
configure:13621: $? = 1
configure: program exited with status 1
  

Использование zsh.

 $ gcc -v
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/c  /4.2.1
Apple clang version 12.0.0 (clang-1200.0.26.2)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
  

Комментарии:

1. Вы должны добавить соответствующие части config.log к вопросу.

2. @LaurenzAlbe спасибо, не знал об этом, надеюсь, я добавил правильную часть

3. Что это за macos-версия?

4. Похоже, что ваш gcc работает с -Werror , но это не так. Это должно выдавать только предупреждение, а не ошибку, и тест должен пройти.

5. @kometen это 10.15.7.