Skip to content

Compilation of 1.5.0 fails on Windows on R 4.1.x i386 #2233

@gaborcsardi

Description

@gaborcsardi

DuckDB 1.5.0, R 4.1.x with the usual compiler, GHA Windows. I realize that you might not want to fix this...

https://github.com/r-lib/nanoparquet/actions/runs/23188485784/job/67378015459?pr=154

Output
  "c:/rtools40/mingw32/bin/"g++  -std=gnu++17 -I"C:/R/include" -DNDEBUG -Iinclude -I../inst/include -DDUCKDB_DISABLE_PRINT -DDUCKDB_R_BUILD -DBROTLI_ENCODER_CLEANUP_ON_OOM -DDUCKDB_EXTENSION_AUTOLOAD_DEFAULT -DDUCKDB_RSTRTMGR=0 -Iduckdb/src/include -Iduckdb/third_party/concurrentqueue -Iduckdb/third_party/fast_float -Iduckdb/third_party/fastpforlib -Iduckdb/third_party/fmt/include -Iduckdb/third_party/fsst -Iduckdb/third_party/httplib -Iduckdb/third_party/hyperloglog -Iduckdb/third_party/jaro_winkler -Iduckdb/third_party/jaro_winkler/details -Iduckdb/third_party/libpg_query -Iduckdb/third_party/libpg_query/include -Iduckdb/third_party/lz4 -Iduckdb/third_party/brotli/include -Iduckdb/third_party/brotli/common -Iduckdb/third_party/brotli/dec -Iduckdb/third_party/brotli/enc -Iduckdb/third_party/mbedtls/include -Iduckdb/third_party/mbedtls/library -Iduckdb/third_party/miniz -Iduckdb/third_party/pcg -Iduckdb/third_party/pdqsort -Iduckdb/third_party/re2 -Iduckdb/third_party/ska_sort -Iduckdb/third_party/skiplist -Iduckdb/third_party/tdigest -Iduckdb/third_party/utf8proc -Iduckdb/third_party/utf8proc/include -Iduckdb/third_party/vergesort -Iduckdb/third_party/yyjson/include -Iduckdb/third_party/zstd/include -Iduckdb/extension/parquet/include -Iduckdb/third_party/parquet -Iduckdb/third_party/thrift -Iduckdb/third_party/lz4 -Iduckdb/third_party/brotli/include -Iduckdb/third_party/brotli/common -Iduckdb/third_party/brotli/dec -Iduckdb/third_party/brotli/enc -Iduckdb/third_party/snappy -Iduckdb/third_party/mbedtls -Iduckdb/third_party/mbedtls/include -Iduckdb/third_party/zstd/include -Iduckdb/extension/core_functions/include -I../inst/include -Iduckdb -DDUCKDB_EXTENSION_PARQUET_LINKED -DDUCKDB_BUILD_LIBRARY -DDUCKDB_EXTENSION_CORE_FUNCTIONS_LINKED -DDUCKDB_BUILD_LIBRARY -DDUCKDB_PLATFORM_RTOOLS=1         -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign  -Wall -pedantic -Wall -pedantic -c statement.cpp -o statement.o
  In file included from statement.cpp:9:
  duckdb/third_party/httplib/httplib.hpp:196:2: warning: #warning is a GCC extension
   #warning                                                                       \
    ^~~~~~~
  duckdb/third_party/httplib/httplib.hpp:196:2: warning: #warning "cpp-httplib doesn't support 32-bit Windows. Please use a 64-bit compiler." [-Wcpp]
  In file included from statement.cpp:9:
  duckdb/third_party/httplib/httplib.hpp: In function 'int duckdb_httplib::detail::poll_wrapper(duckdb_httplib::detail::pollfd*, nfds_t, int)':
  duckdb/third_party/httplib/httplib.hpp:3315:12: error: '::WSAPoll' has not been declared
     return ::WSAPoll(fds, nfds, timeout);
              ^~~~~~~
  duckdb/third_party/httplib/httplib.hpp:3315:12: note: suggested alternative: 'WSANtohl'
     return ::WSAPoll(fds, nfds, timeout);
              ^~~~~~~
              WSANtohl
  duckdb/third_party/httplib/httplib.hpp: In function 'ssize_t duckdb_httplib::detail::select_impl(socket_t, time_t, time_t)':
  duckdb/third_party/httplib/httplib.hpp:3340:17: error: 'pfd' has incomplete type
     struct pollfd pfd;
                   ^~~
  duckdb/third_party/httplib/httplib.hpp:3313:32: note: forward declaration of 'struct duckdb_httplib::detail::pollfd'
   inline int poll_wrapper(struct pollfd *fds, nfds_t nfds, int timeout) {
                                  ^~~~~~
  duckdb/third_party/httplib/httplib.hpp:3340:17: error: 'pfd' has incomplete type
     struct pollfd pfd;
                   ^~~
  duckdb/third_party/httplib/httplib.hpp:3313:32: note: forward declaration of 'struct duckdb_httplib::detail::pollfd'
   inline int poll_wrapper(struct pollfd *fds, nfds_t nfds, int timeout) {
                                  ^~~~~~
  duckdb/third_party/httplib/httplib.hpp:3342:24: error: 'POLLIN' was not declared in this scope
     pfd.events = (Read ? POLLIN : POLLOUT);
                          ^~~~~~
  duckdb/third_party/httplib/httplib.hpp:3342:24: note: suggested alternative: 'LPOLELINK'
     pfd.events = (Read ? POLLIN : POLLOUT);
                          ^~~~~~
                          LPOLELINK
  duckdb/third_party/httplib/httplib.hpp:3342:33: error: 'POLLOUT' was not declared in this scope
     pfd.events = (Read ? POLLIN : POLLOUT);
                                   ^~~~~~~
  duckdb/third_party/httplib/httplib.hpp:3342:33: note: suggested alternative: 'PUAFOUT'
     pfd.events = (Read ? POLLIN : POLLOUT);
                                   ^~~~~~~
                                   PUAFOUT
  duckdb/third_party/httplib/httplib.hpp: In function 'duckdb_httplib::Error duckdb_httplib::detail::wait_until_socket_is_ready(socket_t, time_t, time_t)':
  duckdb/third_party/httplib/httplib.hpp:3390:17: error: aggregate 'duckdb_httplib::detail::pollfd pfd_read' has incomplete type and cannot be defined
     struct pollfd pfd_read;
                   ^~~~~~~~
  duckdb/third_party/httplib/httplib.hpp:3392:21: error: 'POLLIN' was not declared in this scope
     pfd_read.events = POLLIN | POLLOUT;
                       ^~~~~~
  duckdb/third_party/httplib/httplib.hpp:3392:21: note: suggested alternative: 'LPOLELINK'
     pfd_read.events = POLLIN | POLLOUT;
                       ^~~~~~
                       LPOLELINK
  duckdb/third_party/httplib/httplib.hpp:3392:30: error: 'POLLOUT' was not declared in this scope
     pfd_read.events = POLLIN | POLLOUT;
                                ^~~~~~~
  duckdb/third_party/httplib/httplib.hpp:3392:30: note: suggested alternative: 'PUAFOUT'
     pfd_read.events = POLLIN | POLLOUT;
                                ^~~~~~~
                                PUAFOUT
  In file included from statement.cpp:11:
  include/signal.hpp: At global scope:
  include/signal.hpp:48:2: warning: extra ';' [-Wpedantic]
   }; // namespace duckdb
    ^
  In file included from statement.cpp:9:
  duckdb/third_party/httplib/httplib.hpp: In instantiation of 'ssize_t duckdb_httplib::detail::select_impl(socket_t, time_t, time_t) [with bool Read = true; ssize_t = int; socket_t = unsigned int; time_t = long int]':
  duckdb/third_party/httplib/httplib.hpp:3351:43:   required from here
  duckdb/third_party/httplib/httplib.hpp:3340:17: error: 'duckdb_httplib::detail::pollfd pfd' has incomplete type
     struct pollfd pfd;
                   ^~~
  duckdb/third_party/httplib/httplib.hpp: In instantiation of 'ssize_t duckdb_httplib::detail::select_impl(socket_t, time_t, time_t) [with bool Read = false; ssize_t = int; socket_t = unsigned int; time_t = long int]':
  duckdb/third_party/httplib/httplib.hpp:3355:44:   required from here
  duckdb/third_party/httplib/httplib.hpp:3340:17: error: 'duckdb_httplib::detail::pollfd pfd' has incomplete type
  duckdb/third_party/httplib/httplib.hpp: In instantiation of 'ssize_t duckdb_httplib::detail::handle_EINTR(T) [with T = duckdb_httplib::detail::wait_until_socket_is_ready(socket_t, time_t, time_t)::<lambda()>; ssize_t = int]':
  duckdb/third_party/httplib/httplib.hpp:3397:73:   required from here
  duckdb/third_party/httplib/httplib.hpp:3278:9: error: void value not ignored as it ought to be
       res = fn();
       ~~~~^~~~~~
  make: *** [C:/R/etc/i386/Makeconf:245: statement.o] Error 1
  ERROR: compilation failed for package 'duckdb'
  * removing 'C:/Users/RUNNER~1/AppData/Local/Temp/RtmpyWacjg/pkg-lib22b87fe8716a/duckdb'

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