Re: Oolite a GNUstep-based game released on MS Store and FlatHub
R Frith-Macdonald <[email protected]> Wed, 25 Feb 2026 11:45:06 +0000
| Newsgroups | gmane.comp.lib.gnustep.general |
|---|---|
| Message-ID | <[email protected]> |
On 24/02/2026 03:42, Michael Rans wrote: > Hi Riccardo, > > The framerate of the game was reported by the main Windows dev to be > significantly higher with a clang build than with a gcc build. I'm not > sure about Linux. I thought I'd try that out on Debian. Using current (from the respective git repositories this morning) gnustep and oolite code, I built with gcc and with clang. On my system in the tutorial the gcc version was reporting a frame rate in the 70s. Unfortunately, the clang version crashed after displaying the startup screen, with an assertion checking that an object was a ship: 1 0x00007ffff68064ac in __GI_abort () at ./stdlib/abort.c:77 #2 0x00007ffff6806420 in __assert_fail_base (fmt=<optimized out>, assertion=<optimized out>, file=<optimized out>, line=14876, function=<optimized out>) at ./assert/assert.c:118 #3 0x00007ffff68166dc in __assert_fail (assertion=<optimized out>, file=<optimized out>, line=<optimized out>, function=<optimized out>) at ./assert/assert.c:127 #4 0x0000555555aab11b in -[ShipEntity(SubEntityRelationship) isShipWithSubEntityShip:] (self=0x52300003d508, _cmd=<optimized out>, other=0x51f000131688) at src/Core/Entities/ShipEntity.m:14876 #5 0x000055555596fadb in -[Entity parentEntity] (self=0x51f000131688, _cmd=<optimized out>) at src/Core/Entities/Entity.m:592 #6 0x00005555559708bf in -[Entity absolutePositionForSubentityOffset:] ( self=<optimized out>, _cmd=<optimized out>, offset=...) at src/Core/Entities/Entity.m:679 #7 0x00005555559705ed in -[Entity absolutePositionForSubentity] ( self=0x7ffff21790d0, _cmd=<optimized out>) at src/Core/Entities/Entity.m:671 #8 0x00005555559703f5 in -[Entity updateCameraRelativePosition] ( self=0x51f000131688, _cmd=<optimized out>) at src/Core/Entities/Entity.m:665 #9 0x0000555555970246 in -[Entity setPosition:] (self=<optimized out>, --Type <RET> for more, q to quit, c to continue without paging-- _cmd=<optimized out>, posn=...) at src/Core/Entities/Entity.m:650 #10 0x0000555555ade17c in -[OOExhaustPlumeEntity initForShip:withDefinition:andScale:] (self=0x51f000131688, _cmd=<optimized out>, ship=<optimized out>, definition=<optimized out>, scaleFactor=<optimized out>) at src/Core/Entities/OOExhaustPlumeEntity.m:79 #11 0x0000555555addfb5 in +[OOExhaustPlumeEntity exhaustForShip:withDefinition:andScale:] (self=<optimized out>, _cmd=<optimized out>, ship=0x52300003d508, definition=0x50400138bc58, scale=<error reading variable: Value cannot be represented as integer of 8 bytes.>) at src/Core/Entities/OOExhaustPlumeEntity.m:63 #12 0x0000555555a4fa31 in -[ShipEntity setUpSubEntities] ( self=<optimized out>, _cmd=<optimized out>) at src/Core/Entities/ShipEntity.m:869 #13 0x0000555555a4c4b1 in -[ShipEntity setUpFromDictionary:] ( self=<optimized out>, _cmd=<optimized out>, shipDict=0x507000113da8) at src/Core/Entities/ShipEntity.m:446 #14 0x00005555559879c7 in -[PlayerEntity setUpShipFromDictionary:] ( self=0x52300003d508, _cmd=<optimized out>, shipDict=<optimized out>) at src/Core/Entities/PlayerEntity.m:2285 #15 0x0000555555d3694a in -[Universe setUpInitialUniverse] ( self=<optimized out>, _cmd=<optimized out>) at src/Core/Universe.m:10573 #16 0x0000555555cfe793 in -[Universe initWithGameView:] (self=0x52d000adc408, _cmd=<optimized out>, inGameView=<optimized out>) --Type <RET> for more, q to quit, c to continue without paging-- at src/Core/Universe.m:834 #17 0x0000555555cba6dd in -[GameController applicationDidFinishLaunching:] ( self=0x511000009788, _cmd=<optimized out>, notification=<optimized out>) at src/Core/GameController.m:253 #18 0x0000555555cc4061 in main (argc=<optimized out>, argv=<optimized out>) at src/SDL/main.m:209