[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
objc classes don't load at runtime - gui/win32
From: |
Stephen Brandon |
Subject: |
objc classes don't load at runtime - gui/win32 |
Date: |
Fri, 04 Jan 2002 18:08:09 +0000 |
Hi,
I reported this problem some time ago but made no progress
at that time. Today though I have discovered what might be a
clue - so I'd appreciate anyone who has knowledge of the
objc runtime having a look at this and seeing if it's
relevant to the problem.
Setup:
latest CVS gnustep on Win2000/Cygwin tools/mingw32.
Background:
The basic problem is that gnustep-gui classes are not found
at runtime. gnustep-base classes are fine, and other
frameworks that I use (MusicKit, SndKit etc) also load ok.
Diagnostic tools:
I compile libobjc-1.1.0 with the debug option on, so all
loading and caching of imps, modules and classes is
reported.
New clue:
For the first time, I see some diagnostic output that seems
to relate to a gnustep-gui class, thus hopefully pointing to
the fact that it is being at least partially loaded. In this
case, I get some of the following in the output:
...
Record selector NSEraseRect:[(null)] as: 1459
Record selector NSHighlightRect:[(null)] as: 1460
Record selector NSRectClip:[(null)] as: 1461
Record selector NSRectClipList::[(null)] as: 1462
Record selector NSRectFill:[(null)] as: 1463
(etc)
These selectors come from gnustep-gui's NSGraphicsContext.m
file. Strangely though, while it would be usual to see
NSGraphicsContext.m mentioned just before its selectors are
recorded, this is not the case here. In fact, this is what's
logged:
...
received module: GSCompatibility.m
gathering selectors from module: GSCompatibility.m
received module: PerformSound.m
gathering selectors from module: PerformSound.m
received module: SndConditionLock.m
Record selector NSEraseRect:[(null)] as: 1459
Record selector NSHighlightRect:[(null)] as: 1460
Record selector NSRectClip:[(null)] as: 1461
Record selector NSRectClipList::[(null)] as: 1462
Record selector NSRectFill:[(null)] as: 1463
(etc)
Needless to say, my SndConditionLock class makes absolutely
no reference to any of the graphics functions/selectors.
There are not even any headers imported that would refer to
appkit things. Looking at the order of output from
gnustep-objc-1.1.0/init.c, these selectors should definitely
be related to the preceding module name (as far as I can
make out).
If this makes any sense to anyone, please let me know! Could
it be that gcc is messing up the symbol tables?
Cheers,
Stephen Brandon
stephen@brandonitconsulting.co.uk
- objc classes don't load at runtime - gui/win32,
Stephen Brandon <=