As you stated I have updated the code to: i686-w64-mingw32-g++ -Wall -static Programm.cpp -o Programm.exe -I/opt/mingw64/Win32/include -L/opt/mingw64/Win32/lib -static-libgcc -static-libstdc++ -DCURL_STATICLIB -DNGHTTP2_STATICLIB -lcurl -lnghttp2 -lssl -lcrypto -lssl -lcrypto -lz -lpthread -lws2_32 -std=c++11
However, the errors stay. > Op 27 nov. 2017, om 22:48 heeft Ray Satiro via curl-library > <[email protected]> het volgende geschreven: > > On 11/27/2017 4:26 PM, Thomas van Hesteren via curl-library wrote: >> I have build nghttp2 and OpenSSL with the following command both statically >> and shared: >> OpenSSL: >> wget https://www.openssl.org/source/openssl-1.1.0g.tar.gz >> <https://www.openssl.org/source/openssl-1.1.0g.tar.gz> >> tar -xvzf openssl-1.1.0g.tar.gz >> cd openssl-1.1.0g/ >> ./Configure mingw shared --cross-compile-prefix=i686-w64-mingw32- >> --prefix=/opt/mingw64/Win32 >> make >> make install >> >> NGHTTP2 >> wget >> https://github.com/nghttp2/nghttp2/releases/download/v1.28.0/nghttp2-1.28.0.tar.gz >> >> <https://github.com/nghttp2/nghttp2/releases/download/v1.28.0/nghttp2-1.28.0.tar.gz> >> tar xf nghttp2-1.28.0.tar.gz >> cd nghttp2-1.28.0/ >> ./configure --host=i686-w64-mingw32 --prefix=/opt/mingw64/Win32 >> OPENSSL_CFLAGS="/I/opt/mingw64/Win32/openssl/include" >> OPENSSL_LIBS="-L/opt/mingw64/Win32/openssl/lib -lssl -lcrypto" >> make >> make install >> >> When I build Curl dynamically with the following command it works fine: >> i686-w64-mingw32-g++ -Wall Programm.cpp -o Programm.exe >> -I/opt/mingw64/Win32/include -L/opt/mingw64/Win32/lib -static-libgcc >> -static-libstdc++ -DCURL_STATICLIB -lcurl -lnghttp2 -lssl -lcrypto -lpthread >> -lws2_32 -std=c++11 >> >> However, when I try to build Curl statically with the following command it >> fails: >> i686-w64-mingw32-g++ -Wall -static Programm.cpp -o Programm.exe >> -I/opt/mingw64/Win32/include -L/opt/mingw64/Win32/lib -static-libgcc >> -static-libstdc++ -DCURL_STATICLIB -lcurl -lnghttp2 -lssl -lcrypto -lssl >> -lcrypto -lz -lpthread -lws2_32 -std=c++11 >> >> The errors returned are: >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x47): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x77): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xaf): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x448): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x4ac): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x5d4): >> more undefined references to `_imp__nghttp2_session_get_stream_user_data' >> follow >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x6ee): >> undefined reference to `_imp__nghttp2_session_want_write' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x75e): >> undefined reference to `_imp__nghttp2_priority_spec_init' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x7e2): >> undefined reference to `_imp__nghttp2_submit_priority' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x7ef): >> undefined reference to `_imp__nghttp2_session_send' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x8d3): >> undefined reference to `_imp__nghttp2_session_del' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x94d): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xb43): >> undefined reference to `_imp__nghttp2_submit_rst_stream' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xb4e): >> undefined reference to `_imp__nghttp2_is_fatal' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xb69): >> undefined reference to `_imp__nghttp2_session_get_remote_settings' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xcdb): >> undefined reference to `_imp__nghttp2_submit_rst_stream' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xce4): >> undefined reference to `_imp__nghttp2_is_fatal' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xda8): >> undefined reference to `_imp__nghttp2_session_set_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xe80): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xeca): >> undefined reference to `_imp__nghttp2_session_set_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xf6d): >> undefined reference to `_imp__nghttp2_session_want_read' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xf87): >> undefined reference to `_imp__nghttp2_session_want_write' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0xfc7): >> undefined reference to `_imp__nghttp2_session_mem_recv' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x1036): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x11c5): >> undefined reference to `_imp__nghttp2_http2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x1298): >> undefined reference to `_imp__nghttp2_session_resume_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x12ca): >> undefined reference to `_imp__nghttp2_is_fatal' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x176c): >> undefined reference to `_imp__nghttp2_submit_request' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x17bb): >> undefined reference to `_imp__nghttp2_session_send' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x17f9): >> undefined reference to `_imp__nghttp2_session_resume_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x1d0c): >> undefined reference to `_imp__nghttp2_session_mem_recv' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x1d19): >> undefined reference to `_imp__nghttp2_is_fatal' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x1f9e): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2037): >> undefined reference to `_imp__nghttp2_session_callbacks_new' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2071): >> undefined reference to `_imp__nghttp2_session_callbacks_set_send_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2086): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_frame_recv_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x209b): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_invalid_frame_recv_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x20b0): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_data_chunk_recv_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x20c5): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_before_frame_send_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x20da): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_frame_send_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x20ef): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_frame_not_send_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2104): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_stream_close_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2119): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_begin_headers_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x212e): >> undefined reference to >> `_imp__nghttp2_session_callbacks_set_on_header_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2143): >> undefined reference to `_imp__nghttp2_session_callbacks_set_error_callback' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x215e): >> undefined reference to `_imp__nghttp2_session_client_new' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x216d): >> undefined reference to `_imp__nghttp2_session_callbacks_del' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x21b7): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x21e7): >> undefined reference to `_imp__nghttp2_session_get_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x22bc): >> undefined reference to `_imp__nghttp2_version' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x22f2): >> undefined reference to `_imp__nghttp2_http2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2510): >> undefined reference to `_imp__nghttp2_session_set_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2555): >> undefined reference to `_imp__nghttp2_submit_rst_stream' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2631): >> undefined reference to `_imp__nghttp2_pack_settings_payload' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2751): >> undefined reference to `_imp__nghttp2_session_resume_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x298c): >> undefined reference to `_imp__nghttp2_submit_settings' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x29bd): >> undefined reference to `_imp__nghttp2_session_set_local_window_size' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2a41): >> undefined reference to `_imp__nghttp2_session_upgrade' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2a54): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2a85): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2ab5): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2afb): >> undefined reference to `_imp__nghttp2_session_set_stream_user_data' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2b49): >> undefined reference to `_imp__nghttp2_session_mem_recv' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2b54): >> undefined reference to `_imp__nghttp2_is_fatal' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2b88): >> undefined reference to `_imp__nghttp2_strerror' >> /opt/mingw64/Win32/lib/libcurl.a(libcurl_la-http2.o):http2.c:(.text+0x2bb5): >> undefined reference to `_imp__nghttp2_strerror' >> collect2: error: ld returned 1 exit status >> >> What am I doing wrong when trying to build CURL statically? I included >> everything that has been returned by the curl-config —-static-libraries >> command? > > just like CURL_STATICLIB you'll have to do the same with nghttp2 > -DNGHTTP2_STATICLIB > > > > ------------------------------------------------------------------- > Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library > Etiquette: https://curl.haxx.se/mail/etiquette.html
------------------------------------------------------------------- Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html
