You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fails to build under gcc10 version 10-20200405 but successfully builds with gcc9.3.0 #5219
As of yestersday, I tried to cross-compile curl library under ubuntu 18.04.3 mingw64 for win10x64 for use with cross-compiling mediainfo.
The last commit (release) that built successfully under gcc10 version 10-20200405 was : commit works: '2cfac302fbeec68f1727cba3d1705e16f02220ad'
This subsequent commit (release) fails to build under gcc10 gcc10 version 10-20200405 but successfully builds with gcc9.3.0 commit fails: 'b8d1366852fd0034374c5de1e4968c7a224f77cc'
changed the title [-]fails to build under gcc10 gcc10 version 10-20200405 but successfully builds with gcc9.3.0[/-][+]fails to build under gcc10 version 10-20200405 but successfully builds with gcc9.3.0[/+]on Apr 12, 2020
OK, when it fails with gcc10 version 10-20200405 at latest commit (but works with gcc 9.3.0), this is what I see:
make[2]: Entering directory '/home/u/Desktop/_working/workdir/x86_64/curl_git/src'
CC curl-slist_wc.o
CC curl-tool_binmode.o
CC curl-tool_bname.o
CC curl-tool_cb_dbg.o
CC curl-tool_cb_hdr.o
CC curl-tool_cb_prg.o
CC curl-tool_cb_rea.o
CC curl-tool_cb_see.o
CC curl-tool_cb_wrt.o
CC curl-tool_cfgable.o
CC curl-tool_convert.o
CC curl-tool_dirhie.o
CC curl-tool_doswin.o
CC curl-tool_easysrc.o
CC curl-tool_filetime.o
CC curl-tool_formparse.o
CC curl-tool_getparam.o
CC curl-tool_getpass.o
CC curl-tool_help.o
CC curl-tool_helpers.o
CC curl-tool_homedir.o
HUGE tool_hugehelp.c
CC curl-tool_libinfo.o
CC curl-tool_main.o
CC curl-tool_metalink.o
CC curl-tool_msgs.o
CC curl-tool_operate.o
CC curl-tool_operhlp.o
CC curl-tool_panykey.o
CC curl-tool_paramhlp.o
CC curl-tool_parsecfg.o
CC curl-tool_progress.o
CC curl-tool_strdup.o
CC curl-tool_setopt.o
CC curl-tool_sleep.o
CC curl-tool_urlglob.o
CC curl-tool_util.o
CC curl-tool_vms.o
CC curl-tool_writeout.o
CC curl-tool_writeout_json.o
CC curl-tool_xattr.o
CC curl-tool_hugehelp.o
CC ../lib/curl-strtoofft.o
CC ../lib/curl-nonblock.o
CC ../lib/curl-warnless.o
CC ../lib/curl-curl_ctype.o
CCLD curl.exe
/home/u/Desktop/_working/workdir/toolchain/x86_64-w64-mingw32/lib/gcc/x86_64-w64-mingw32/10.0.1/../../../../x86_64-w64-mingw32/bin/ld: ../lib/.libs/libcurl.a(libcurl_la-system_win32.o):system_win32.c:(.bss+0x10): multiple definition of `Curl_freq'; curl-tool_doswin.o:tool_doswin.c:(.bss+0x8): first defined here
/home/u/Desktop/_working/workdir/toolchain/x86_64-w64-mingw32/lib/gcc/x86_64-w64-mingw32/10.0.1/../../../../x86_64-w64-mingw32/bin/ld: ../lib/.libs/libcurl.a(libcurl_la-system_win32.o):system_win32.c:(.bss+0x8): multiple definition of `Curl_isVistaOrGreater'; curl-tool_doswin.o:tool_doswin.c:(.bss+0x0): first defined here
collect2: error: ld returned 1 exit status
Makefile:879: recipe for target 'curl.exe' failed
make[2]: *** [curl.exe] Error 1
make[2]: Leaving directory '/home/u/Desktop/_working/workdir/x86_64/curl_git/src'
Makefile:1964: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/u/Desktop/_working/workdir/x86_64/curl_git/src'
Makefile:983: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Oh, with commit 2cfac302fbeec68f1727cba3d1705e16f02220ad this is what I see
CC curl-tool_util.o
CC curl-tool_vms.o
CC curl-tool_writeout.o
CC curl-tool_xattr.o
CC curl-tool_hugehelp.o
CC ../lib/curl-strtoofft.o
CC ../lib/curl-nonblock.o
CC ../lib/curl-warnless.o
CC ../lib/curl-curl_ctype.o
CC ../lib/curl-curl_ctype.o
CCLD curl.exe
make[2]: Leaving directory '/home/u/Desktop/_working/workdir/x86_64/curl_git/src'
make[1]: Leaving directory '/home/u/Desktop/_working/workdir/x86_64/curl_git/src'
make[1]: Entering directory '/home/u/Desktop/_working/workdir/x86_64/curl_git'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/home/u/Desktop/_working/workdir/x86_64/curl_git'
There are global variables named Curl_isVistaOrGreater and Curl_freq present in both libcurl and the client code. I'm sure this causes problems when the build can't hide non-exported symbols. I think a simple fix would be to stop the curl tool from using libcurl's private prefix (Curl_) for its variables.
Activity
jay commentedon Apr 12, 2020
What was the error? Can you bisect it?
hydra3333 commentedon Apr 12, 2020
ok, it'll take me a few hours to resurrect the deleted vm and try
jay commentedon Apr 12, 2020
If it's going to take a lot of your time don't worry about it we can just wait until someone else reports it and has that data.
hydra3333 commentedon Apr 12, 2020
i'm retired and in lockdown, i've time ;)
[-]fails to build under gcc10 gcc10 version 10-20200405 but successfully builds with gcc9.3.0[/-][+]fails to build under gcc10 version 10-20200405 but successfully builds with gcc9.3.0[/+]hydra3333 commentedon Apr 12, 2020
OK, when it fails with gcc10 version 10-20200405 at latest commit (but works with gcc 9.3.0), this is what I see:
for configure:
Now, onto bisecting.
hydra3333 commentedon Apr 12, 2020
Oh, with commit
2cfac302fbeec68f1727cba3d1705e16f02220adthis is what I seehydra3333 commentedon Apr 12, 2020
OK...
Commit 1fc0617
tool_util: Improve Windows version of tvnow()Feb 19, 2020fails to build under gcc10 version 10-20200405The prior commit
3735107d62ad28d6e25bd94109ab9f2454c22116builds OK under gcc10 version 10-20200405jay commentedon Apr 12, 2020
Ok. Are you able to build this:
The output should be:
hydra3333 commentedon Apr 12, 2020
OK will do.
It's cross-compiling, so program.exe runs on win10 of course.
hydra3333 commentedon Apr 12, 2020
OK,
hydra3333 commentedon Apr 12, 2020
uncut console log, probably of less than zero use to you.
bagder commentedon Apr 12, 2020
There are global variables named
Curl_isVistaOrGreaterandCurl_freqpresent in both libcurl and the client code. I'm sure this causes problems when the build can't hide non-exported symbols. I think a simple fix would be to stop the curl tool from using libcurl's private prefix (Curl_) for its variables.Curl_freq:
Curl_isVistaOrGreater:
tool: do not declare functions with Curl_ prefix
try latest upstream curl patch
hydra3333 commentedon Apr 14, 2020
thanks!