[Konq/E] Same problems now as ever

Simon Hausmann konq-e@mail.kde.org
Fri, 22 Feb 2002 20:14:24 +0100


On Fri, Feb 22, 2002 at 12:05:37PM -0500, Imad Hussain wrote:
> > > Earlier in the month I wrote about the problems I was having
> > > compiling Konq/E on OpenBSD 3.0. While a few of the minor errors
> > > (mostly pertaining to the makefile and the #include statements) are
> > > remedied in the latest (Feb 19th) snapshot and the CVS code (as of
> > > this morning), I still needed to fix the bad char* cast in
> > > launcher.cpp. But that was relatively easy.
> > 
> > In which line did you need the cast? (I'd be happy to add it)
> 
> Lines 187 and 257:   
>   msg.msg_control = (char *)&hdr;
> 
> I hope I did that right. =)

Yep, correct. Thanks, comitted. (interesting, I didn't get these as
errors when I compiled it on fbsd on SourceForge's compilefarm)

> > > I'm still getting the out of memory abort when compiling the helper
> > > function -- it has something to do with the color map/list at the
> > > beginning, but the compiler will eat up over 120 MB of memory (I've
> > > added a new harddrive and now have 500 MB of swap with 64 MB of
> > > physical RAM) and exit with a "virtual memory exhausted" error. I'm
> > > wondering why this happens and what can be done about it.
> > 
> > I guess a temporary workaround would be to compile this very file
> > without optimizations. That should reduce the amount of memory the
> > compiler needs significantly. Try editing the generated Makefile and
> > look for '-O2' -- a quick perl -pi -e "s,-O2,,g" Makefile in that
> > directory might do the trick :)
> 
> Well, the makefile in
> D/konqueror-embedded-snapshot-20020219/konq-embed/kdesrc/khtml/misc
> doesn't seem to have a '-02' switch anywhere in it. The thing is, I
> don't get why the 'map["black"]...' lines (43-60) eat up so much memory
> -- if I comment out just the color maps, the file compiles in
> just under 85 MB of memory (according to top). In fact, if I leave even
> one of these lines in, it won't compile ("virtual memory exhausted").

Hmm, which compiler are you using? Any special compiler flags?
(how much swap do you have installed? :-)

> Another problem is that konq crashes as soon as I try to get it to load a page (the menus and preferences dialogue work):
> 
>   Launcher::dispatchLoop()...
>   Xlib:  extension "RENDER" missing on display ":0.0".
>   debug: KHTMLPart::init this=0x569000 d=0x56e800
>   QAction::setAccel()  (saveDocument) requires widget in parent chain.
>   debug: dcopclient::send
>   debug: creating slave for http://www.kde.org/
>   error sending launcherCreateSlaveCmd: Invalid argument
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    Aha! Looks like there is some difference in the socket API
    between Linux and OpenBSD in terms of the interpretation of the
    passed arguments. (which confuses me, given that the API in
    linux is derived from the BSD sockets, no?)

Hmm, according to the sendmsg manage from openbsd.org EINVAL can
happen only in two situations:

* The flags parameter is invalid.

* The sum of the iov_len values in the msg_iov array overflowed an ssize_t.

I can't see what's wrong with passing 0 for the flags (I don't need
any of the MSG_* ones) . And I can't imagine that sizeof( LauncherMsg ) 
overflows an ssize_t...

I have to admit I'm a bit puzzled. Could this perhaps be a kernel
problem? 

> Oh well. I still have Dillo and can run Opera remotely, at least. =(

:-(


Simon