Hi Fred,

On December 29, 2019 at 12:31 PM, Fred Kiefer <[email protected]> wrote:

Thank you for your tests. I had a look into the NSBundle code in base and from 
that I think that we have an issue with frameworks here. Is clang supporting 
frameworks?
The code in base doesn’t have any log statements that we could use. So this 
means you will have to switch to a debugger and run ProjectCenter with a 
breakpoint on NSBundle.m:2280 and wait until we get around with the name 
„LogPanel“ and see whether the framework version gets added correctly.


From within the debugger I am seeing that _frameworkVersion tends to be nil.  
And I'm having trouble seeing the values of NSStrings...  so maybe there's 
something up.

Patryk


(base) 
patryk@wax:~/gnustep-build/ubuntu-19.04-clang-8.0-runtime-2.0/GNUstep-build/apps-projectcenter/ProjectCenter.app$
 lldb ./ProjectCenter 
(lldb) target create "./ProjectCenter"
Current executable set to './ProjectCenter' (x86_64).

(lldb) breakpoint set --file NSBundle.m --line 2280
Breakpoint 1: no locations (pending).
WARNING:  Unable to resolve breakpoint to any actual locations.

(lldb) run
Process 3951 launched: 
'/home/patryk/gnustep-build/ubuntu-19.04-clang-8.0-runtime-2.0/GNUstep-build/apps-projectcenter/ProjectCenter.app/ProjectCenter'
 (x86_64)
1 location added to breakpoint 1
Process 3951 stopped
* thread #1, name = 'ProjectCenter', stop reason = breakpoint 1.1
    frame #0: 0x00007ffff7731997 libgnustep-base.so.1.27`-[NSBundle 
pathForResource:ofType:inDirectory:](self=0x0000000000683768, _cmd="-", 
name=0x00007ffff7a8c978, extension=0xe1b34f3e8000002c, subPath=0x0000000000000000) at 
NSBundle.m:2283:7
   2280   NSString *rootPath;
   2281    2282 #if !defined(_WIN32)
-> 2283   if (_frameworkVersion)
   2284     rootPath = [NSString stringWithFormat: @"%@/Versions/%@", [self 
bundlePath],
   2285       _frameworkVersion];
   2286   else

(lldb) fr va _frameworkVersion
(NSString *) _frameworkVersion = nil
(lldb) n
Process 3951 stopped
* thread #1, name = 'ProjectCenter', stop reason = step over
    frame #0: 0x00007ffff77319e5 libgnustep-base.so.1.27`-[NSBundle 
pathForResource:ofType:inDirectory:](self=0x0000000000683768, _cmd="-", 
name=0x00007ffff7a8c978, extension=0xe1b34f3e8000002c, subPath=0x0000000000000000) at 
NSBundle.m:2288:16
   2285       _frameworkVersion];
   2286   else
   2287 #endif
-> 2288     rootPath = [self bundlePath];
   2289    2290   return [NSBundle _pathForResource: name
   2291      ofType: extension

(lldb) n
Process 3951 stopped
* thread #1, name = 'ProjectCenter', stop reason = step over
    frame #0: 0x00007ffff77319f4 libgnustep-base.so.1.27`-[NSBundle 
pathForResource:ofType:inDirectory:](self=0x0000000000683768, 
_cmd=<unavailable>, name=0x00007ffff7a8c978, extension=0xe1b34f3e8000002c, 
subPath=0x0000000000000000) at NSBundle.m:2290:10
   2287 #endif
   2288     rootPath = [self bundlePath];
   2289 -> 2290   return [NSBundle _pathForResource: name
   2291      ofType: extension
   2292  inRootPath: rootPath
   2293         inDirectory: subPath];

(lldb) fr va rootPath
(NSString *) rootPath = 0x00000000006838a8
(lldb) 

Reply via email to