[webkit-dev] Fwd: Any way to get a debugging symbols build without compiling?

Alemar alemarosorio at gmail.com
Thu Apr 8 07:21:43 PDT 2021


Hey all!

Thanks for the fast reply :) here I quote:

---

Krzysztof, thanks for your response. Indeed, WebKit is awesome! You
have a point with the debug build, however, I'd say that for general
purpose it's valid to at least provide one (you'll see why below) like
they already did for Xenial (I didn't know until now though)
https://packages.ubuntu.com/xenial/libwebkit2gtk-3.0-25-dbg . Sadly,
there's no package for 4.0. I don't see it as a burden or a problem, I
mean, I was able to compile one, so sharing it should be a piece of
cake, no?

Oh, I didn't know about Slack, thanks! I only looked at the homepage
to see the communication channels, and Slack wasn't mentioned anywhere
:) I thought about IRC but yeah, it doesn't surprise me that it's
quiet so that's why I gave the mailing list a try.

---

Guillaume, thanks a lot for your detailed explanation! It did help! I
think you were right - I honestly don't know if it was due to OOM (I
was definitely getting reboots though), but using -j4 with Ninja fixed
the issue and I was able to have a debug build, yay! Yeah I went into
full console mode, took around 70 minutes or so. Thank you!

---

Now, I have another question (maybe unrelated but now that we're here...):

I've noticed that with the debug build, I'm not experiencing the stack
smashing issue I used to before. How come? I'm thinking that maybe the
debug version has some kind of protections against buffer overflows so
the issue doesn't happen? I'm a bit concerned about having to
distribute my app along with custom-built libraries instead of using
each distro's official packages.

So, my question is: What CLI arguments are used for building the
release version posted on the website? I'm assuming it's not just:

cmake -DPORT=GTK -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_GAMEPAD=NO
-DENABLE_INTROSPECTION=NO -GNinja

Because that's what I ran (RelWithDebInfo is shown on the Trac site as
an example, but I want to follow the official build, not an example).
I'm very new to C++/CMake stuff so I'd like to know if there's a place
where I can figure out what is the final command line used to build
the same release package? My concern is to reproduce the same issue
I'm experiencing with my distro's package and the debug build doesn't
crash, so how would I go into doing that?

My distro right now is Manjaro 5.11.6.1-MANJARO using using webkit2gtk
2.30.5-1 from the official repo, although the issue also happens with
Ubuntu Focal under Docker.

Thanks again!
-Alemar

---------- Forwarded message ---------
De: Guillaume Emont <guijemont at igalia.com>
Date: jue, 8 abr 2021 a las 5:04
Subject: Re: [webkit-dev] Any way to get a debugging symbols build
without compiling?
To: Alemar <alemarosorio at gmail.com>


Hi Alemar,

Could you be running out of memory? Gcc (assuming that's the compiler
you're using) takes a lot of RAM (IIRC usually around 2GB per process),
and the linking phase takes a lot of RAM too, especially in debug, so
if you are using many
cores for compilation,  you could be running into OOM territory,
especially if you have other memory-intensive processes running on the
host. I suggest you try to use less processes in parallel (with e.g -j4
passed to ninja), and try to close other memory-hungry applications
(e.g. web browsers) while compiling.

Hope this helps,

Guillaume

Quoting Alemar via webkit-dev (2021-04-08 06:29:01)
> Hello list,
>
> I just joined here because I have a question/problem related to
> WebKitGTK development. I wanted to know if it's possible for you devs
> to also publish or provide builds with debugging symbols?
>
> To give some context: I've spent around 2 days worth of free time this
> week trying to get the standard build to work, and it always
> hangs/crashes my computers when building the JavaSscriptCore files
> (not to mention they seem rather heavy).
>
> This has happened to me on my i7 4790K w/ 16 GB RAM (4C/8T) under both
> Manjaro Linux and Ubuntu 20.10 (I even switched to Manjaro to see if
> it was a lack of resources, but no) and it also happened on a VPS
> server I have rented on SSDNodes (12 vCPUs and 48 GB RAM), it hanged
> so bad that I had to hard-reboot it. I dunno what the code is doing,
> but I don't think I need to have a mainframe to build this, do I?
>
> The question also comes out of frustration: I'm trying to debug a
> "stack smashing detected" issue and to see the call stack I need the
> debugging symbols, otherwise all I see is undefined symbols all
> around.
>
> So, how hard/possible it is for you to provide a build with the
> debugging symbols (since you're the devs and might have already
> reached a checkpoint where you don't have to build the JavaScriptCore
> anymore since builds are incremental) for us poor devs who can't
> afford a more powerful rig and are actually developing apps to bring
> some bread to the table?
>
> Thanks and sorry for my lack of netiquette regarding mailing lists,
> I'm pretty new to using these. I wonder why don't you guys have a
> forum, a discourse, or a way to submit questions/bug that's not an
> email list?
>
> Thanks,
> -Alemar
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
>


More information about the webkit-dev mailing list