Package Details: webkitgtk 3:2.4.11-27

Git Clone URL: https://aur.archlinux.org/webkitgtk.git (read-only, click to copy)
Package Base: webkitgtk
Description: Legacy Web content engine for GTK+ 3
Upstream URL: https://webkitgtk.org/
Licenses: custom
Conflicts: libwebkit3, webkitgtk3
Provides: libwebkit3, webkitgtk3
Replaces: libwebkit3, webkitgtk3
Submitter: City-busz
Maintainer: frealgagu
Last Packager: frealgagu
Votes: 70
Popularity: 1.03
First Submitted: 2017-06-30 07:40 (UTC)
Last Updated: 2023-08-15 19:11 (UTC)

Pinned Comments

frealgagu commented on 2019-04-14 18:13 (UTC) (edited on 2020-12-06 03:31 (UTC) by frealgagu)

FAQ

Q: What's the difference between this package and extra/webkit2gtk?

A: webkitgtk/webkitgtk2 provides WebKit1 API/ABI, which is not compatible with WebKit2 API/ABI provided by extra/webkit2gtk. WebKitGTK+ 2.4.x is the latest branch that provides WebKit1 API. Later branches provides WebKit2 API only.

Please don't flag it as out-of-date.


Q: Are there binaries for this package somewhere?

A: I maintain the latest built package at https://github.com/frealgagu/archlinux.webkitgtk/releases


Q: "error while loading shared libraries: libicui18n.so.62: cannot open shared object file: No such file or directory"

A: You'll need to rebuild against the latest version of ICU.


Q: "error: ‘WTF::StringImpl::StaticASCIILiteraicASCIILiteral’ has not been declared" or any enchant errors.

A: If you are building in parallel, try disabling parallel using -j1 in /etc/makepkg.conf


Q: Why building takes too long time?

A: WebKit is inherently big and complex. You can modify /etc/makepkg.conf or PKGBUILD directly to build it in parallel.

  • Change "make all stamp-po" by "make -j x all stamp-po" in PKGBUILD replacing x by cores your machine has. (Thanks to @MadMe)

  • Change /etc/makepkg.conf in that way: https://wiki.archlinux.org/index.php/makepkg#Parallel_compilation under # ARCHITECTURE, COMPILE FLAGS use MAKEFLAGS="-j9" # It should be one more than your virtual CPUs. (Thanks to @tuxsavvy).

However be pending if errors occur as mentioned in previous question.


Q: How much I want to wait to a successful compilation?

A: It varies of your PC's processor and RAM, the times shared in the comments are as follow:

  • 3.5 hours to build on core i5 laptop with 8G of RAM, makeflags j4. (@cabbage)

  • 13.5 hours to build on AMD Athlon X2, makeflags j1 (@Bonnietwin).

  • 5-6 hours on Core2Duo E8400 with 8GB RAM, makeflags j2 (tuxsavvy).

  • 50 minutes on 6c/12t 3.3GHz (@kubrick).

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 .. 16 Next › Last »

JL55 commented on 2021-04-25 18:53 (UTC)

@frealgagu Arch has updated icu to version 69 recently, could you help to upload a binary package with latest icu?

chiwanpark commented on 2021-04-21 17:26 (UTC)

@frealgagu I've found the cause of build failing with glib 2.68.x. Recently, glib has released breaking API changes (https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1715). Here is the pull request of patch for the changes. (https://github.com/frealgagu/archlinux.webkitgtk/pull/1)

chiwanpark commented on 2021-04-19 02:44 (UTC)

I've failed to build the package. The error is:

/usr/include/glib-2.0/glib/gmacros.h:247:24: error: expected ‘)’ before ‘typename’
  247 | #define glib_typeof(t) typename std::remove_reference<decltype (t)>::type
      |                        ^~~~~~~~
/usr/include/glib-2.0/gobject/gobject.h:524:34: note: in expansion of macro ‘glib_typeof’
  524 | #define g_object_ref_sink(Obj) ((glib_typeof (Obj)) (g_object_ref_sink) (Obj))
      |                                  ^~~~~~~~~~~
/home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WTF/wtf/gobject/GRefPtr.h:32:21: note: in expansion of macro ‘g_object_ref_sink’
   32 | extern "C" gpointer g_object_ref_sink(gpointer);
      |                     ^~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gbinding.h:29,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from /usr/include/libsoup-2.4/libsoup/soup-types.h:9,
                 from /usr/include/libsoup-2.4/libsoup/soup-address.h:11,
                 from /usr/include/libsoup-2.4/libsoup/soup.h:15,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/network/soup/GUniquePtrSoup.h:23,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/URL.h:39,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/MediaPlayer.h:38,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:23,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:21:
/usr/include/glib-2.0/gobject/gobject.h:524:33: note: to match this ‘(’
  524 | #define g_object_ref_sink(Obj) ((glib_typeof (Obj)) (g_object_ref_sink) (Obj))
      |                                 ^
/home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WTF/wtf/gobject/GRefPtr.h:32:21: note: in expansion of macro ‘g_object_ref_sink’
   32 | extern "C" gpointer g_object_ref_sink(gpointer);
      |                     ^~~~~~~~~~~~~~~~~
In file included from /usr/lib/glib-2.0/include/glibconfig.h:9,
                 from /usr/include/glib-2.0/glib/gtypes.h:32,
                 from /usr/include/glib-2.0/glib/galloca.h:32,
                 from /usr/include/glib-2.0/glib.h:30,
                 from /usr/include/glib-2.0/gobject/gbinding.h:28,
                 from /usr/include/glib-2.0/glib-object.h:22,
                 from /usr/include/glib-2.0/gio/gioenums.h:28,
                 from /usr/include/glib-2.0/gio/giotypes.h:28,
                 from /usr/include/glib-2.0/gio/gio.h:26,
                 from /usr/include/libsoup-2.4/libsoup/soup-types.h:9,
                 from /usr/include/libsoup-2.4/libsoup/soup-address.h:11,
                 from /usr/include/libsoup-2.4/libsoup/soup.h:15,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/network/soup/GUniquePtrSoup.h:23,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/URL.h:39,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/MediaPlayer.h:38,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:23,
                 from /home/chiwanpark/.cache/yay/webkitgtk/src/webkitgtk-2.4.11/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:21:

Here is the package installed and related to the package:

glib2 2.68.0-5
gtk2 2.24.33-2
gtk3 1:3.24.28-4
gst-libav 1.18.4-1
gst-plugin-pipewire 1:0.3.25-1
gst-plugins-bad 1.18.4-4
gst-plugins-bad-libs 1.18.4-4
gst-plugins-base 1.18.4-1
gst-plugins-base-libs 1.18.4-1
gst-plugins-good 1.18.4-2
gst-plugins-ugly 1.18.4-2
gstreamer 1.18.4-1
gstreamer-vaapi 1.18.4-1
gobject-introspection 1.68.0-1
gobject-introspection-runtime 1.68.0-1
python-gobject 3.40.1-1
harfbuzz 2.8.0-3
harfbuzz-icu 2.8.0-3
icu 69.1-1

keithspg commented on 2021-03-01 00:18 (UTC) (edited on 2021-03-01 00:19 (UTC) by keithspg)

This does not build on aarch64. It does build fine and works on armv7. When attempted on aarch64, the error is:

/Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/assembler/ARM64Assembler.h:2525:85:   required from here
/Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/WTF/wtf/Vector.h:98:13: warning: implicitly-declared ‘constexpr JSC::ARM64Assembler::LinkRecord::LinkRecord(const JSC::ARM64Assembler::LinkRecord&)’ is deprecated [-Wdeprecated-copy]
   98 |             new (NotNull, dst) T(std::move(*src));
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/assembler/MacroAssemblerARM64.h:31,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/assembler/MacroAssembler.h:38,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/jit/GPRInfo.h:29,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/runtime/VM.h:34,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/heap/CopiedSpaceInlines.h:33,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/runtime/ButterflyInlines.h:31,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/runtime/JSArray.h:25,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/bytecode/ArrayProfile.h:30,
                 from /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
/Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/assembler/ARM64Assembler.h:561:14: note: because ‘JSC::ARM64Assembler::LinkRecord’ has user-provided ‘void JSC::ARM64Assembler::LinkRecord::operator=(const JSC::ARM64Assembler::LinkRecord&)’
  561 |         void operator=(const LinkRecord& other)
      |              ^~~~~~~~
  CXX      Source/WTF/wtf/dtoa/libWTF_la-bignum-dtoa.lo
  CXX      Source/WTF/wtf/dtoa/libWTF_la-bignum.lo
distcc[50818] ERROR: compile /Rune_dev/aarch64/webkitgtk/src/webkitgtk-2.4.11/Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp on localhost failed
make: *** [GNUmakefile:82394: Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o] Error 1
make: *** Waiting for unfinished jobs....
==> ERROR: A failure occurred in build().
    Aborting...

slav commented on 2021-02-09 08:03 (UTC)

@frealgagu Thank you!

frealgagu commented on 2021-02-09 05:19 (UTC)

@slav I always maintain the lastest build in https://github.com/frealgagu/archlinux.webkitgtk/releases

For version 3:2.4.11-22 this is the direct url: https://github.com/frealgagu/archlinux.webkitgtk/releases/download/3_2.4.11-22/webkitgtk-3.2.4.11-22-x86_64.pkg.tar.zst

slav commented on 2021-02-08 20:58 (UTC)

Can someone please provide compiled package webkitgtk-3:2.4.11-22 webkitgtk2-3:2.4.11-22 ? Thanks, Slav

BruceR commented on 2021-01-16 10:29 (UTC)

Hi @frealgagu, I expect it builds in a chroot jail because gtk-doc is not installed in the jail and therefore autoconf is not trying to configure it. I'm not sure what effects that has on the generated package. I'll setup a jail when I get a chance and see what is different with and without gtk-doc installed.

Interestingly the whole reference manual looks to be in the src/webkitgtk-2.4.11/Documentation subdir in HTML format and it was built using gtk-doc by upstream. I guess this could be added to a -doc package.

frealgagu commented on 2021-01-16 00:08 (UTC)

@Scindix @Hubro @Baltazar72 @BruceR @u666sa Today I've compiled the package without make any changes. Have you tried to make in a chroot jail? Otherwise I don't know why that's happening.

Scindix commented on 2021-01-13 16:39 (UTC)

I had the gtkdocsize error as well. But I can confirm that the patch @BruceR posted works. At least for me. Thanks for your service @BruceR.