While building www/webkit-gtk from pkgsrc-2019Q3, it failed close to the end of the build like this: [100%] Building CXX object Source/WebKit/CMakeFiles/WebKit.dir/__/__/DerivedSources/WebKit/unified-sources/UnifiedSource-54928a2b-32.cpp.o [100%] Linking CXX shared library ../../lib/libwebkit2gtk-4.0.so ../../lib/libWTFGTK.a(MediaTime.cpp.o): In function `WTF::MediaTime::setTimeScale(unsigned int, WTF::MediaTime::RoundingFlags)': MediaTime.cpp:(.text+0xb13): undefined reference to `__divmodti4' collect2: error: ld returned 1 exit status gmake[2]: *** [Source/WebKit/CMakeFiles/WebKit.dir/build.make:7468: lib/libwebkit2gtk-4.0.so.37.39.2] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:1255: Source/WebKit/CMakeFiles/WebKit.dir/all] Error 2 gmake: *** [Makefile:152: all] Error 2 *** Error code 2 Stop. make[1]: stopped in /mnt/vol1/rhialto/cvs/pkgsrc/www/webkit-gtk Now this symbol __divmodti4 is supposed to be present in libgcc.a, so there seemed to be some problem with locating it. I examined .work.log and noticed a -specs option added at to the end of the command line: -specs=/home/tmp/www/webkit-gtk/work.x86_64/.cwrapper/specs.libgcc Looking into that file it showed some stuff about linking libgcc and a directory name related to gcc7, but not a correct location for libgcc.a. Unfortunately, various attempts at manipulating the file to use the correct directory didn't help. I ran by hand the (very long) command but with just -lgcc added at the end, and then linking succeeded (so seemingly the specs file was a red herring). I got a built package after also adding the 2 usual shared library symlinks and re-running make. What I don't understand is why this problem occurs here. I first saw it before I compiled with gcc7 (but with 8.1's stock gcc) but changing compilers (which I did for unrelated reasons) did not make a difference. I can't really believe that this is the first package that actually uses anything from libgcc.a in a shared library, either. -Olaf. -- Olaf 'Rhialto' Seibert -- rhialto at falu dot nl ___ Anyone who is capable of getting themselves made President should on \X/ no account be allowed to do the job. --Douglas Adams, "THGTTG"
Attachment:
signature.asc
Description: PGP signature