bug-gnustep
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]