Freezing App Startups

I figured out why things always froze the first time on starting any KDE/Mac apps.
We had originally disabled forking in KUniqueApplications because otherwise quartz wouldn't know how to find them. The problem is, some apps *need* to fork. So now, instead of #ifdef'ing it out, I've reenabled the --nofork option, and then changed our app-bundle-generating script to add the --nofork option to the little shell script we put in the bundle so that it runs properly from the finder.
Unfortunately, is sloooow, but hopefully we'll eventually have the build set up to generate application bundles during the install, and it won't be so bad.
IceFox is making good progress on the new .desktop -> .app conversion script, hopefully soon we can just start looking into integrating that into the KDE build system. I've gotta port my new changes to it first though.
We're definitely getting closer to something that's worth releasing to the general populace, though. It's not nearly as ugly as it was. Still plenty ugly though. =)

Share on Facebook

6 comments to Freezing App Startups

  • Scott

    Well we are all glad that you are working on this! Thanks a lot!

  • Chris C

    Hi. Am going thru the process of putting this all together on my machine (B&W 450 w/512R). Downloaded all the files that the nice people at OpenDarwin are hosting for you. Installed QT and all the rest of it that came with it. Altered my env to point the stuff to where it wants it to be and then hit the CVS for ARTS (did not read the part about the one at OD not working), KDELIBS, KDEBASE, Koffice, Kedu, and kdegames.
    have gotten arts to build. but am having a problem with kdelibs. your config-kde script chugs along just like it did before with arts but fails here when it can not build the CUPS test program in the config.
    One other thing while I am thinking of it, the configure-kde script does not seem to be invoked or used by the make -f … command string in the wiki. It dumps out at that point but the script works fine when you drag into the terminal window and hit return. From that point make all && make install went slick.
    The only thing that I can figure on the CUPS thing is that the version of QT that in on the OD site is not built with CUPS support. Can you suggest a work around? I really don’t want to compile QT and start over (it takes a LOOOONG time to compile on this box). Any advise would be helpful and I know that you are probably upto your earlobes in coding and patching and I apologize for the interruption.

  • Hm, it shouldn’t fail, it should just skip the bits that need cups.
    What’s the actual error when configure finishes failing?

  • Chris C

    sorry forgot to include my OS… 10.3.2 with Xcode the full kaboodle (minus languages).

  • Chris C

    jeez that was fast! you must have been posting when I was typing my second post with the OS info. It will be a second I am going thru it again and it is coming up on the break point.

  • Chris C

    alright first am using tcsch for the shell if that makes any difference.
    configure: WARNING: Fast malloc is not tested on this platform. The build may fail or the executables may crash.
    checking whether to enable fast malloc… no
    checking whether g++-3.3 supports -finline-limit=100000… yes
    checking for assembler support for AltiVec instructions… , AltiVec no
    checking for cups-config… /usr/bin/cups-config
    checking for cupsServer in -lcups… yes
    checking cups/cups.h usability… yes
    checking cups/cups.h presence… yes
    checking for cups/cups.h… yes
    checking CUPS version >= 1.0109… configure: error: Unable to compile test program. See config.log for more informations
    the conf.log is not much help. there is one line in it towards the end of the file that says kde_cups_config=’/usr/bin/cups-config’.
    but here is the last few lines
    #define WORDS_BIGENDIAN 1
    #define X11_RGBFILE “/X11/rgb.txt”
    #define __KDE_BINDIR “/opt/kde/bin”
    #define __KDE_EXECPREFIX “NONE”
    #define error_t int
    #define ksize_t socklen_t
    #ifdef __cplusplus