[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: ksycoca4
From:       Ian Wadham <iandw.au () gmail ! com>
Date:       2014-03-22 22:41:05
Message-ID: CFDE250A-2056-47BD-B21C-F65A4A69F747 () gmail ! com
[Download RAW message or body]

On 23/03/2014, at 4:52 AM, mk-lists@email.de wrote:
> I just tried to start KDE's bug reporter from a little tutorial applicati=
on on MacOSX, but I got this spat out at the console: =

> =97
> $ tutorial2.app/Contents/MacOS/tutorial2
> tutorial2(1006)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to=
 open ksycoca from "/private/var/tmp/kdecache-marko/ksycoca4=94

That is a normal message. It just tells you where KDE libs is looking for t=
he SyCoCa.

I see you are running your tutorial2 as if it was a UNIX or Linux app, i.e.=
 by
direct execution of the executable file which the compile/build just create=
d.  That
is OK most of the time.  I do it routinely when building/testing KDE games.

However, as I discovered only a few days ago, if KDE libs has to start anot=
her
process, such as a plugin or maybe the bug reporter, you can fall foul of A=
pple
OS X execution conventions --- or rather their absence.  See the thread
"taskgated: no signature" on the MacPorts Users list for the (slow) dawning=
 of
my understanding of this.

Briefly, if you do "make install" with your test program, KDE's CMake-gener=
ated
makefile will create an Apple OS X app "bundle" at /Applications/KDE4/tutor=
ial2.app,
which you can then execute in the proper Apple OS X way with:
    open  /Applications/KDE4/tutorial2.app
and all your special test-environment variables will also be effective.

You might then find that your test works: my Palapeli plugin certainly did =
for
me, but it had always crashed Palapeli before when testing UNIX/Linux-style,
because although the plugin was found, it could not be loaded by the O/S.

The drawback of using "open" to run the app is that your app's debugging ou=
tput
goes to the Apple OS X Console log, rather than stderr.

For KDE bystanders: Apple OS X installs apps as "bundles" --- a tree of
directories and files, starting at <prefix>/<appname>.app --- and that tree
contains all the info the app needs to run, not just the executables.  I am
about to dive into the following link (when I have time):
    https://developer.apple.com/library/ios/documentation/CoreFoundation/Co=
nceptual/CFBundles/Introduction/Introduction.html
As I said to Frank a while back, "They just do things differently in that t=
own".

> =97
> and nothing happened.
> =

> I don=92t know what goes wrong here.
> Perhaps nothing?

Try again? =85 :-)

Cheers, Ian W.

>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscrib=
e <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic