You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Compile on Linux fails - error: redefinition of 'iOS' - etc. #3
it looks like the precompiled header file for some reason is included twice. i have no clue why this happens but added a simple guard around the header to prevent problems from multiple inclusion. give it a go (updated code in github) ;)
• libffplaylib.so: undefined reference to * : the prebuilt libffplaylib.so located in DEPENDENCIES/libs-linux64//libffplaylib.so doesn't seem to work in your distribution. i'd suggest rebuilding it from source (h ttps://github.com/core-code/ffplaylib )
• /usr/lib/libgnustep-base.so: undefined reference to *: there seems to be some problems with linking to the gnustep packages you've installed it seems it can't find libicu. i'd suggest adding "-licuuc" to the ADDITIONAL_OBJC_LIBS line in CoreBreach/GNUmakefile and try again. if this doesn't work maybe the gnustep developers can help with this problem
Arch Linux doesn't provide old binary packages and it looks like back in ffmpeg 0.8 days they used a different version number system. I tried building one older version which failed for finding the right ffmpeg release source package and I doubt it would compile, so I'd rather try removing ffplay functionality, since it seems that it might be realistic to do.
I seem to have been able to remove FFPlay (diff: http://codepad.org/XHySgH6V )
Compilation finishes now.
CB doesn't start:
$ CoreBreach.app/CoreBreach
2015-04-14 20:05:57.101 CoreBreach[3929:3929] Info: properOpenGL 1 gpuVendor 3 gpuSuckynessClass 0 (GL_VERSION: 3.0 Mesa 10.5.2 GL_RENDERER: Gallium 0.4 on AMD CAPE VERDE GL_VENDOR: X.Org)
2015-04-14 20:05:57.112 CoreBreach[3929:3929] Did not find correct version of backend (libgnustep-back-024.bundle), falling back to std (libgnustep-back.bundle).
2015-04-14 20:05:57.113 CoreBreach[3929:3929] NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
CoreBreach.app/CoreBreach: Uncaught exception NSInternalInconsistencyException, reason: NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
So I recompile all the gnustep packages.
Then I noticed "gnustep-back" in the error message and installed the package.
When I start the game, the loading screen appears. http://i.imgur.com/lKvy3lZ.jpg When I start it, after about 5 seconds I hear a voice. If I press enter, I hear something that might be an engine standby noise. Pressing ESC releases my mouse.
Probably the code changes made CB go into video mode and never return or the open source AMD graphics driver might be failing.
I changed the condition which causes goto done; to be always true (1) and now I get the win screen after a few seconds of the game loading. http://i.imgur.com/Pc7qH5W.jpg
Perhaps I was wrong assuming ffplay is used for video file playback only and instead it handles the 3D display as well.
Arch Linux doesn't provide old binary packages and it looks like back in ffmpeg 0.8 days they used a different version number system. I tried building one older version which failed for finding the right ffmpeg release source package and I doubt it would compile,
actually i found ffmpeg normally compiles without many problems at all... but YMMV
so I'd rather try removing ffplay functionality, since it seems that it might be realistic to do.
I seem to have been able to remove FFPlay (diff: http://codepad.org/XHySgH6V )
Compilation finishes now.
CB doesn't start:
$ CoreBreach.app/CoreBreach
2015-04-14 20:05:57.101 CoreBreach[3929:3929] Info: properOpenGL 1 gpuVendor 3 gpuSuckynessClass 0 (GL_VERSION: 3.0 Mesa 10.5.2 GL_RENDERER: Gallium 0.4 on AMD CAPE VERDE GL_VENDOR: X.Org)
2015-04-14 20:05:57.112 CoreBreach[3929:3929] Did not find correct version of backend (libgnustep-back-024.bundle), falling back to std (libgnustep-back.bundle).
2015-04-14 20:05:57.113 CoreBreach[3929:3929] NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
CoreBreach.app/CoreBreach: Uncaught exception NSInternalInconsistencyException, reason: NSApplication.m:304 Assertion failed in BOOL initialize_gnustep_backend(). Unable to find backend back
So I recompile all the gnustep packages.
Then I noticed "gnustep-back" in the error message and installed the package.
great ;)
note that the shipped binary version (you can download the demo) uses some skins to make it less ugly
When I start the game, the loading screen appears. http://i.imgur.com/lKvy3lZ.jpg When I start it, after about 5 seconds I hear a voice. If I press enter, I hear something that might be an engine standby noise. Pressing ESC releases my mouse.
Probably the code changes made CB go into video mode and never return or the open source AMD graphics driver might be failing.
i believe seeing nothing is because some change to SDLRenderViewController is wrong.
changing
if (!isPlayingVideo())
to
if (0)
turns rendering off completely
I changed the condition which causes goto done; to be always true (1) and now I get the win screen after a few seconds of the game loading. http://i.imgur.com/Pc7qH5W.jpg
Perhaps I was wrong assuming ffplay is used for video file playback only and instead it handles the 3D display as well.
no, it just plays the videos. its inter-winded quite ugly with the rendering code though because SDL and ffmpeg APIs aren't so nice
actually i've already coded support for running without ffplay into SDLRenderViewController because ffplay doesn't work on the mac. sorry i didn't remember it earlier
so, i suggest resetting SDLRenderViewController to the GIT version and just changing
#ifdef APPLE
to
#if 1
this activates the stub functions at the bottom of the file so you don't need to link against actual ffplay. this should work since it has been tested on the mac a few years back
Program received signal SIGSEGV, Segmentation fault.
0x00000000004d2fb6 in -[Racetrack lightAtPoint:] ()
(gdb) bt
#0 0x00000000004d2fb6 in -[Racetrack lightAtPoint:] ()
#1 0x00000000004c9f30 in -[Playership updateNode] ()
#2 0x00000000004702f5 in -[SceneNode update] ()
#3 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24
#4 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24
#5 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24
#6 0x000000000046f5a9 in -[Scene update:] ()
#7 0x000000000047d855 in -[RenderViewController mainLoop] ()
#8 0x00007ffff6e2b4be in ?? () from /usr/lib/libgnustep-base.so.1.24
#9 0x00007ffff6e58562 in ?? () from /usr/lib/libgnustep-base.so.1.24
#10 0x00007ffff6e2d8cc in ?? () from /usr/lib/libgnustep-base.so.1.24
#11 0x00007ffff6e2e696 in ?? () from /usr/lib/libgnustep-base.so.1.24
#12 0x00007ffff790f081 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#13 0x00007fffe61274f8 in ?? () from /usr/lib/GNUstep/Bundles/libgnustep-back-024.bundle/./libgnustep-back-024
#14 0x00007ffff777fa57 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#15 0x00007ffff777e4cf in ?? () from /usr/lib/libgnustep-gui.so.0.24
#16 0x00007ffff77612ef in NSApplicationMain () from /usr/lib/libgnustep-gui.so.0.24
#17 0x00007ffff4dbf800 in __libc_start_main () from /usr/lib/libc.so.6
#18 0x000000000045c399 in _start ()
I tested a few more times and it seems like without gdb it always crashes at the end of the sequence or if I press enter or LMB. With gdb, it lasts a few seconds after the countdown: http://youtu.be/sxyNuxiLkYY
Program received signal SIGSEGV, Segmentation fault.
0x00000000004d2fb6 in -Racetrack lightAtPoint:
(gdb) bt
#0 0x00000000004d2fb6 in -Racetrack lightAtPoint: #1 0x00000000004c9f30 in -Playership updateNode #2 0x00000000004702f5 in -SceneNode update #3 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24 #4 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24 #5 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24
#6 0x000000000046f5a9 in -Scene update:
#7 0x000000000047d855 in -RenderViewController mainLoop
#8 0x00007ffff6e2b4be in ?? () from /usr/lib/libgnustep-base.so.1.24
#9 0x00007ffff6e58562 in ?? () from /usr/lib/libgnustep-base.so.1.24
#10 0x00007ffff6e2d8cc in ?? () from /usr/lib/libgnustep-base.so.1.24
#11 0x00007ffff6e2e696 in ?? () from /usr/lib/libgnustep-base.so.1.24
#12 0x00007ffff790f081 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#13 0x00007fffe61274f8 in ?? () from /usr/lib/GNUstep/Bundles/libgnustep-back-024.bundle/./libgnustep-back-024
#14 0x00007ffff777fa57 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#15 0x00007ffff777e4cf in ?? () from /usr/lib/libgnustep-gui.so.0.24
#16 0x00007ffff77612ef in NSApplicationMain () from /usr/lib/libgnustep-gui.so.0.24
#17 0x00007ffff4dbf800 in __libc_start_main () from /usr/lib/libc.so.6
#18 0x000000000045c399 in _start ()
I tested a few more times and it seems like without gdb it always crashes at the end of the sequence or if I press enter or LMB. With gdb, it lasts a few seconds after the countdown: http://youtu.be/sxyNuxiLkYY
—
Reply to this email directly or view it on GitHub.
you can just change
#ifdef TARGET_OS_IPHONE
inside Track.mm => lightAtPoint to prevent the crash
what worries me more is that you see just the track and the enemies...(its supposed to look like this: )
and also the pictures are missing in the launcher
it seems like its unable to find half of the necessary files...is there any debug warnings or output about this?
Program received signal SIGSEGV, Segmentation fault.
0x00000000004d2fb6 in -Racetrack lightAtPoint:
(gdb) bt
#0 0x00000000004d2fb6 in -Racetrack lightAtPoint: #1 0x00000000004c9f30 in -Playership updateNode #2 0x00000000004702f5 in -SceneNode update #3 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24 #4 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24 #5 0x00007ffff6ceacef in ?? () from /usr/lib/libgnustep-base.so.1.24
#6 0x000000000046f5a9 in -Scene update:
#7 0x000000000047d855 in -RenderViewController mainLoop
#8 0x00007ffff6e2b4be in ?? () from /usr/lib/libgnustep-base.so.1.24
#9 0x00007ffff6e58562 in ?? () from /usr/lib/libgnustep-base.so.1.24
#10 0x00007ffff6e2d8cc in ?? () from /usr/lib/libgnustep-base.so.1.24
#11 0x00007ffff6e2e696 in ?? () from /usr/lib/libgnustep-base.so.1.24
#12 0x00007ffff790f081 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#13 0x00007fffe61274f8 in ?? () from /usr/lib/GNUstep/Bundles/libgnustep-back-024.bundle/./libgnustep-back-024
#14 0x00007ffff777fa57 in ?? () from /usr/lib/libgnustep-gui.so.0.24
#15 0x00007ffff777e4cf in ?? () from /usr/lib/libgnustep-gui.so.0.24
#16 0x00007ffff77612ef in NSApplicationMain () from /usr/lib/libgnustep-gui.so.0.24
#17 0x00007ffff4dbf800 in __libc_start_main () from /usr/lib/libc.so.6
#18 0x000000000045c399 in _start ()
I tested a few more times and it seems like without gdb it always crashes at the end of the sequence or if I press enter or LMB. With gdb, it lasts a few seconds after the countdown: http://youtu.be/sxyNuxiLkYY
—
Reply to this email directly or view it on GitHub.
you can just change
#ifdef TARGET_OS_IPHONE
inside Track.mm => lightAtPoint to prevent the crash
what worries me more is that you see just the track and the enemies...(its supposed to look like this<Bildschirmfoto 2015-04-15 um 09.41.38.png>: )
and also the pictures are missing in the launcher
it seems like its unable to find half of the necessary files...is there any debug warnings or output about this?
ok it seems this is because of:
// opensource build doesn't use the full datatset
#define NODATA 1
one thing is still weird, after the race you should come to the "race finished" screen where you see your position in the online highscores etc. i didn't see this in the video
I switched #define NODATA 1 to 0 and it still runs (not sure if there's a difference): https://youtu.be/JkX6ParcsY0
#define NODATA 0 still 'defines' NODATA so it won't make the change as the check is done using #ifdef and not #if
so, i'd recommend to erasing the #define NODATA line completely
Thanks a lot!
Arch Linux 64bit build summary:
Copy ffplaylib.h to OtherSources/ffplaylib.h.
Make a few changes in CoreBreach (git diff)
Install some clang-related packages from AUR.
Compile with GNUSTEP_MAKEFILES=/usr/share/GNUstep/Makefiles make
Thanks a lot for the help :)
I'll write a blogpost with CoreBreach in it on freegamer.blogspot.com soon
Looks like it won't run without NODATA.
FYI: The end screen does appear: http://i.imgur.com/7ZTpcec.jpg (I usually record using GLC, which only captures OpenGL, so it doesn't record the GUI part)
I'm on Arch Linux, not Slackware. :) I installed windowmaker-0.95.6-1 windowmaker-extra-0.1-5 but couldn't figure out how to change the theme in the command line.
That particular blog is for open source games, so the assets included in git are actually more interesting.
Thanks for clarifying. I'm not sure which map to try though, it seems like neither uses track1. The first map produces this:
Calling [NSBitmapImageRep -_convertToFormatBitsPerSample:samplesPerPixel:hasAlpha:isPlanar:colorSpaceName:bitmapFormat:bytesPerRow:bitsPerPixel:] with incorrect signature. Method has @68@0:8q16q24C32C36@40i48q52q60, selector has @68@0:8q16q24C32C36@40I48q52q60
2015-04-16 23:34:48.216 CoreBreach[11377:11377] File NSData.m: 162. In BOOL readContentsOfFile(NSString *, void **, off_t *, NSZone *) Open ((null)) attempt failed - bad path
Error: there is no octree named: track1_1AL
Thanks for clarifying. I'm not sure which map to try though, it seems like neither uses track1. The first map produces this:
Error: there is no octree named: track1_1
yes this is the failure message that the first additional track object for track1 could not be found (track1 is the track itself which you are already seeing, track1_x are the additional objects).
actually it seems the demo dataset includes track3 and not track1
if you download the demo dataset and add the files to your installation you should be able to play track3 with full content
Activity
core-code commentedon Apr 12, 2015
hello ivan
;)
i guess it would be possible to compile natively on windows too (using gnustep and clang) but i'm sure it wouldn't be easy.
hm i didn't compile corebreach for 3 years and don't have any linux systems around so i'm not sure if i can provide much help at this point
it looks like the precompiled header file for some reason is included twice. i have no clue why this happens but added a simple guard around the header to prevent problems from multiple inclusion. give it a go (updated code in github) ;)
bye, julian
qubodup commentedon Apr 13, 2015
Thanks!
There remain some errors though:
http://codepad.org/mNZ5qG9I
core-code commentedon Apr 13, 2015
hello iwan
it seems to compile which is good news.
there are some problems when linking though.
i see two different problems:
• libffplaylib.so: undefined reference to * : the prebuilt libffplaylib.so located in DEPENDENCIES/libs-linux64//libffplaylib.so doesn't seem to work in your distribution. i'd suggest rebuilding it from source (h ttps://github.com/core-code/ffplaylib )
• /usr/lib/libgnustep-base.so: undefined reference to *: there seems to be some problems with linking to the gnustep packages you've installed it seems it can't find libicu. i'd suggest adding "-licuuc" to the ADDITIONAL_OBJC_LIBS line in CoreBreach/GNUmakefile and try again. if this doesn't work maybe the gnustep developers can help with this problem
bye, julian
qubodup commentedon Apr 14, 2015
Thanks!
The second part was my oversight again. I updated icu 5 days ago, and all I had to do was recompile gnustep-base-clang-svn and gnustep-gui-clang-svn
This is what remains, nice and clean: http://codepad.org/u2vJHqZF
Looks like compiling ffplaylib might be very hard core-code/ffplaylib#1
core-code commentedon Apr 14, 2015
cool ;)
i guess you can skip compiling ffplay if you just install the 0.8 release of ffmpeg and link against it
qubodup commentedon Apr 14, 2015
Thank you for offering to help at core-code/ffplaylib#1 (comment) too!
Arch Linux doesn't provide old binary packages and it looks like back in ffmpeg 0.8 days they used a different version number system. I tried building one older version which failed for finding the right ffmpeg release source package and I doubt it would compile, so I'd rather try removing ffplay functionality, since it seems that it might be realistic to do.
I seem to have been able to remove FFPlay (diff: http://codepad.org/XHySgH6V )
Compilation finishes now.
CB doesn't start:
So I recompile all the gnustep packages.
Then I noticed "gnustep-back" in the error message and installed the package.
Now the Start window appears! http://i.imgur.com/w3iYXiu.jpg
When I start the game, the loading screen appears. http://i.imgur.com/lKvy3lZ.jpg When I start it, after about 5 seconds I hear a voice. If I press enter, I hear something that might be an engine standby noise. Pressing ESC releases my mouse.
Probably the code changes made CB go into video mode and never return or the open source AMD graphics driver might be failing.
I changed the condition which causes
goto done;to be always true (1) and now I get the win screen after a few seconds of the game loading. http://i.imgur.com/Pc7qH5W.jpgPerhaps I was wrong assuming ffplay is used for video file playback only and instead it handles the 3D display as well.
core-code commentedon Apr 14, 2015
actually i found ffmpeg normally compiles without many problems at all... but YMMV
great ;)
note that the shipped binary version (you can download the demo) uses some skins to make it less ugly
i believe seeing nothing is because some change to SDLRenderViewController is wrong.
changing
if (!isPlayingVideo())
to
if (0)
turns rendering off completely
no, it just plays the videos. its inter-winded quite ugly with the rendering code though because SDL and ffmpeg APIs aren't so nice
actually i've already coded support for running without ffplay into SDLRenderViewController because ffplay doesn't work on the mac. sorry i didn't remember it earlier
so, i suggest resetting SDLRenderViewController to the GIT version and just changing
#ifdef APPLE
to
#if 1
this activates the stub functions at the bottom of the file so you don't need to link against actual ffplay. this should work since it has been tested on the mac a few years back
core-code commentedon Apr 14, 2015
weird that the pictures are missing ...
qubodup commentedon Apr 15, 2015
Thanks! I copied ffplaylib.h to OtherSources/ and made your suggested change.
It crashes though and I can't seem to be able to reproduce it consistently.
Usually it stars at what seems to be the end of the intro sequence: http://youtu.be/JyQKRxkdecM
But attempt in which I used gdb came as far as me driving for about 4 seconds: http://i.imgur.com/RK5iw3N.jpg
gdb bt:
I tested a few more times and it seems like without gdb it always crashes at the end of the sequence or if I press enter or LMB. With gdb, it lasts a few seconds after the countdown: http://youtu.be/sxyNuxiLkYY
core-code commentedon Apr 15, 2015
you can just change
#ifdef TARGET_OS_IPHONE
inside Track.mm => lightAtPoint to prevent the crash
what worries me more is that you see just the track and the enemies...(its supposed to look like this: )
and also the pictures are missing in the launcher
it seems like its unable to find half of the necessary files...is there any debug warnings or output about this?
core-code commentedon Apr 15, 2015
ok it seems this is because of:
// opensource build doesn't use the full datatset
#define NODATA 1
license.txt explains it all...
qubodup commentedon Apr 15, 2015
Nice, I was able to do a full race with this change:
Run: http://youtu.be/APepO7HRrqU
I switched
#define NODATA 1to0and it still runs (not sure if there's a difference): https://youtu.be/JkX6ParcsY0Thanks a lot!
Arch Linux 64bit build summary:
GNUSTEP_MAKEFILES=/usr/share/GNUstep/Makefiles makecore-code commentedon Apr 15, 2015
cool
seems you are too good for the game
one thing is still weird, after the race you should come to the "race finished" screen where you see your position in the online highscores etc. i didn't see this in the video
#define NODATA 0 still 'defines' NODATA so it won't make the change as the check is done using #ifdef and not #if
so, i'd recommend to erasing the #define NODATA line completely
glad it works more or less ;)
qubodup commentedon Apr 16, 2015
Thanks a lot for the help :)
I'll write a blogpost with CoreBreach in it on freegamer.blogspot.com soon
Looks like it won't run without NODATA.
FYI: The end screen does appear: http://i.imgur.com/7ZTpcec.jpg (I usually record using GLC, which only captures OpenGL, so it doesn't record the GUI part)
core-code commentedon Apr 16, 2015
of course the blog post would look much cooler if we could get it to run in full mode, i.e. without NODATA
what exactly happens if you delete the NODATA define?
ah cool ;)
does slackware have the gnustep-gnome theme? this would make it look much better
qubodup commentedon Apr 16, 2015
I'm on Arch Linux, not Slackware. :) I installed windowmaker-0.95.6-1 windowmaker-extra-0.1-5 but couldn't figure out how to change the theme in the command line.
That particular blog is for open source games, so the assets included in git are actually more interesting.
Without NODATA, the menu appears but the game won't run: http://codepad.org/W5JmmS3L
core-code commentedon Apr 16, 2015
ugh sorry. being a mac user i sometimes throw the more esoteric distributions in a pot ;->
i don't believe there is a connection between windowmaker (the gnustep window manager) and the theme that gnustep uses
https://gnutopics.wordpress.com/2014/06/06/theming-and-style-in-gnustep/
ok great.
i'd open source at least the demo assets but those were made externally and are not owned by us.
Error: there is no octree named: track4_Hive
ah ok its exiting because it isn't finding one of the meshes...since only "track1" is part of the demo dataset i'd try with track 1
qubodup commentedon Apr 16, 2015
Thanks for clarifying. I'm not sure which map to try though, it seems like neither uses track1. The first map produces this:
core-code commentedon Apr 18, 2015
yes this is the failure message that the first additional track object for track1 could not be found (track1 is the track itself which you are already seeing, track1_x are the additional objects).
actually it seems the demo dataset includes track3 and not track1
if you download the demo dataset and add the files to your installation you should be able to play track3 with full content
qubodup commentedon Apr 18, 2015
I forgot to mention it earlier and forgot in the meantime: the downloads at http://corebreach.corecode.at/CoreBreach/Try.html are 404
core-code commentedon Apr 18, 2015
thanks, the linux / windows links should work now