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






Reply via email to