-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ladybird on NetBSD #23375
Comments
The build with the default Unix Makefiles generator has been broken for a while, I think. Can you try using the
|
Thanks for the comment.
The combination of cmake + ninja in pkgsrc usually works fine, but I had to disable it for two other projects too. I suspect a timestamp problem, but I have no clue how to debug this. Update: It's not endless, it's just very long, and then it fails with:
so that's progress :) |
We just recently (like, literally yesterday) added the calls to secure_getenv in that file. What OS is this? Does it have that function? Or are we just missing an include |
I'm compiling on NetBSD.
I'm at
which I've worked around with setting
which I only know how to fix this way:
compilation on-going. |
so we don't have many people compiling for NetBSD, so this is kinda expected. FreeBSD is going ok it seems, as they have a port in their tree. fwiw FreeBSD 14 seems to have secure_getenv https://man.freebsd.org/cgi/man.cgi?getenv(3) we have macros like AK_OS_NETBSD already, from AK/Platform.h Regarding executing binaries from the build, that's supposed to work via RPATH. if pkgsrc hates RPATH, then it's expected you'd need LD_LIBRARY_PATH. that's #22335 That popcount thing looks super bogus. On my linux box that's calling |
Thanks, I'll use I needed no further patches to compile; I had to change the font search path (pkgsrc uses On startup, I have a major problem though:
However, turning this feature off didn't fix the problem, so perhaps that's a red herring. Any ideas? |
That mmap should be just a
where HeapBlock::block_size is 4096.
perhaps NetBSD expects that the fd parameter is -1 for MAP_ANONYMOUS? |
I think you're right, from NetBSD's mmap man page:
|
One patch later:
ladybird finishes startup, but shows me, for every page I tried including
I have two core dumps, one for RequestServer:
and one for WebContent:
|
about:srcdoc is a known issue #23216 hitting issues in getaddrinfo/freeaddrinfo is unexpected though. It looks like we copy serenity/Userland/Libraries/LibCore/System.h Lines 243 to 267 in a0dc958
serenity/Userland/Libraries/LibCore/System.cpp Line 1507 in a0dc958
|
C++ is not my forte, but from a short review this looks fine.
makes a copy of the result and doesn't move it? What is a site that should definitely work (for testing)? |
The same patch to |
Since @ADKaster was so nice proposing a pull request with fixes, I wanted to try it out, but the build fails early for me right now:
On NetBSD, I now need:
|
So I tried ladybird with the proposed patches from the pull request, the one in the comment #23375 (comment) and the last one from comment #23375 (comment) (constexpr) on NetBSD, and it starts up and shows the search bar with some icons for Bing, Duckduckgo etc. but does nothing when I click on them and core dumps when I enter "https://github.com/" in the URL bar. Only one core dump though, for RequestServer. |
Sounds like the problem with getaddrinfo is still there. Still not sure what we're doing wrong with those, though I haven't looked into it very much. |
Still core dumps, a problem in getaddrinfo, see SerenityOS/serenity#23375
Re: librt, does this patch do the trick?
And/or does changing LibCore to LibCoreMinimal fix it? (i.e. do we only need librt on the minimal lib) |
Re: addrinfo: Does this patch fix it?
Most LibCs we target don't seem to mind if we call ::freeaddrinfo(null) |
You might be on the right track, I just found https://github.com/NetBSD/src/blob/9bda4630351909a1a74baa7c5b3e2fbb1553b941/lib/libc/net/getaddrinfo.c#L42-L44 |
Thanks.
is enough. |
Yes! It seems to do more now. But then it dies in WebContent. Backtrace:
|
That's when I try to visit https://github.com |
I saw the commit and thought I'd give it another try. Most patches seem merged, so I just removed all local changes.
That's with gcc 10.5.0 in case it matters. |
We bumped our minimum required gcc version to 13.x recently 😅 . That or clang-17+ |
Ah, I forgot that the package was already using gcc 12. I've now switched it to gcc 13, and see:
NetBSD has its own popcount: https://man.netbsd.org/popcount.3 |
Ah hmm. Does qualifying that call as AK::popcount fix the build error? |
That does indeed work! Thanks:
Compared to last time I built this, liblagom-gui.so is not installed any longer. Just mentioning this to check if this is intended or a local issue. Also, progress! I visited github.com again and it showed the page! :)
|
I tried packaging ladybird for pkgsrc and tried following the
Custom CMake build directory
instructions from https://github.com/SerenityOS/serenity/blob/master/Documentation/BuildInstructionsLadybird.md but fail quite soon (directly after configure) when various Python scripts are called and want to create files in directories that do not exist (yet?).I though that perhaps it's caused by me building highly parallel, but even with a single job it fails with:
with more jobs in parallel, here are some more of the problems:
For the last example, which has a complete path, I see that the path up to
LibGfx
exists, but not theImageFormats
subdirectory:Please advise, thank you!
The text was updated successfully, but these errors were encountered: