raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

gzdoom on raspberry pi

Sun Apr 02, 2017 3:50 pm

I've heard that gzdoom has been ported to openpandora.Can it be ported to Pi

PrettyCoolBruh
Posts: 14
Joined: Tue Jun 23, 2015 10:24 pm

Re: gzdoom on raspberry pi

Sun Apr 02, 2017 7:16 pm

People who think they know everything are a great annoyance to those of us who do

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 5:45 am

It is zdoom and it runs choppy.gzdoom uses gpu but zdoom uses cpu.

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 10:20 am

I have ported GZdoom to he Pandora. I used an old version of GZdoom because newer ones need shaders and I didn't want to port to GLES2 (I use gl4es on the Pandora to provide GPU acceleration).

If you want to try something on the RPi, I suggest you try Zandronum. Use my bitbucket repo there: https://bitbucket.org/ptitSeb/zandronum

I think it has been compiled on a ODroid, so it should work on RPi too.

User avatar
antiriad
Posts: 107
Joined: Sun Nov 17, 2013 7:38 pm
Location: Italy

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 12:06 pm

Hi,
I'm happy to join this conversation because I'm still searching for the "definitive" source port of (not-vanilla) DOOM on Raspberry Pi.

Currently the scene, IMHO, is a bit confused on RPi, with A LOT of "untapped potential": in Raspbian repos there is PrBOOM that seems GLES accelerated but old and a bit buggy (no way to enable Vsync). I tested ZDOOM from RetroPie script: it's easy to install and OK on low resolutions, but at 1280x1024 frames drop consistently (probably being rendered in software mode).

I constantly read about "spontaneous" portings by/for skilled users, but at the end binaries are not updated or are not "officially" tested on RPI (some do work only under X11, some are extremely difficult to compile, some are not HW accelerated, some are outdated etc.). I understand that this is "part of the game" on Raspberry, but IMHO it's also unfortunate to see so many projects and efforts left "pending" without a real source port optimized and maintained.

I've tried yet to raise awareness on Doomworld Forums, and I write also here: if someone of good will has ported yet a DOOM engine (not vanilla) successfully on RPi with GLES acceleration, please "love" the same project putting it on Github (or SourceForge) and keep it updated, or even better propose a merge with an main source port (like GZDoom).

Thanks! ;D

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 3:25 pm

when i am compiling i get the following error:

Code: Select all

-- The C compiler identification is GNU 4.9.2
-- The CXX compiler identification is GNU 4.9.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find BZip2 (missing:  BZIP2_LIBRARIES BZIP2_INCLUDE_DIR) 
-- Found JPEG: /usr/lib/arm-linux-gnueabihf/libjpeg.so  
-- Found ZLIB: /usr/lib/arm-linux-gnueabihf/libz.so (found version "1.2.8") 
-- Could NOT find GME (missing:  GME_LIBRARIES GME_INCLUDE_DIR) 
-- Using system zlib
-- Using system jpeg library
-- Using internal bzip2 library
-- Using internal gme library
-- Performing Test HAVE_NO_ARRAY_BOUNDS
-- Performing Test HAVE_NO_ARRAY_BOUNDS - Success
-- Performing Test __LIBGME_TEST_VISIBILITY
-- Performing Test __LIBGME_TEST_VISIBILITY - Success
-- Performing Test CAN_DO_CPP14
-- Performing Test CAN_DO_CPP14 - Success
-- Looking for strnicmp
-- Looking for strnicmp - not found
-- SQLite: downloading the archive...
CMake Error at sqlite/CMakeLists.txt:30 (message):
  SQLite: download failed.  Reason: "Couldn't connect to server"


-- Configuring incomplete, errors occurred!
See also "/home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/CMakeFiles/CMakeOutput.log".
See also "/home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/CMakeFiles/CMakeError.log".

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 3:30 pm

For this compile issue. I never had this issue. Is you RPi on network?
Also, you can probably install sqlite from some sudo apt-get or compile it from source and that should fix the issue.

*EDIT* : I rechecked the CMAkeList and no, it needs to be downloaded.
It should download v3.14.1 and inside sqlite/ you should see that file: sqlite-86bfed5752783fb24c051f3efac5972ce11023f0.tar.gz

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 3:41 pm

antiriad wrote:Hi,
I'm happy to join this conversation because I'm still searching for the "definitive" source port of (not-vanilla) DOOM on Raspberry Pi.

Currently the scene, IMHO, is a bit confused on RPi, with A LOT of "untapped potential": in Raspbian repos there is PrBOOM that seems GLES accelerated but old and a bit buggy (no way to enable Vsync). I tested ZDOOM from RetroPie script: it's easy to install and OK on low resolutions, but at 1280x1024 frames drop consistently (probably being rendered in software mode).

I constantly read about "spontaneous" portings by/for skilled users, but at the end binaries are not updated or are not "officially" tested on RPI (some do work only under X11, some are extremely difficult to compile, some are not HW accelerated, some are outdated etc.). I understand that this is "part of the game" on Raspberry, but IMHO it's also unfortunate to see so many projects and efforts left "pending" without a real source port optimized and maintained.

I've tried yet to raise awareness on Doomworld Forums, and I write also here: if someone of good will has ported yet a DOOM engine (not vanilla) successfully on RPi with GLES acceleration, please "love" the same project putting it on Github (or SourceForge) and keep it updated, or even better propose a merge with an main source port (like GZDoom).

Thanks! ;D
I keep my repo of Zandronum petty much up-to-date with upstream (that is also on bitbucket). I test it on Pandora and can do some test on ODroid (that is very similar to RPi), but I cannot test on RPi (I don't have any). This version has no GLES port, I rely on GL wrapper for hardware acceleration. my gl4es wrapper (on guthub there: https://github.com/ptitSeb/gl4es ) works on RPI and so can be use, but I think there is also a beta OpenGL driver on the RPi that can probably be used too.

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 4:06 pm

This forum post is from my RPi 2.I changed to wired but it dos'ent work

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 4:22 pm

Ah, ok. Let me try again on a vm, I'll clean the build folder to be sure.

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 4:28 pm

It works on my side.

You can download it manually.

get

https://www.sqlite.org/2016/sqlite-auto ... 100.tar.gz

rename it to sqlite-774a05b8e7c9318111228bd5ad6bf65272f3fe38.tar.gz
and put that archive inside sqlite subfolder. The cmake process should then complete.

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 4:49 pm

Now this error:

Code: Select all

-- Could NOT find BZip2 (missing:  BZIP2_LIBRARIES BZIP2_INCLUDE_DIR) 
-- Could NOT find GME (missing:  GME_LIBRARIES GME_INCLUDE_DIR) 
-- Using system zlib
-- Using system jpeg library
-- Using internal bzip2 library
-- Using internal gme library
-- Looking for strdup
-- Looking for strdup - found
-- Looking for strndup
-- Looking for strndup - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of char
-- Check size of char - done
-- Check size of short
-- Check size of short - done
-- Check size of int
-- Check size of int - done
-- Check size of long
-- Check size of long - done
-- /usr/include
-- /home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/bzip2
-- /home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/lzma/C
-- Looking for itoa
-- Looking for itoa - not found
-- Performing Test DUMB_CAN_USE_SSE
-- Performing Test DUMB_CAN_USE_SSE - Failed
CMake Warning (dev) at gdtoa/CMakeLists.txt:25 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "arithchk".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at gdtoa/CMakeLists.txt:34 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "qnan".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:29 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "zipdir".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  wadsrc/CMakeLists.txt:3 (add_pk3)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:29 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "zipdir".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  wadsrc_bm/CMakeLists.txt:3 (add_pk3)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at wadsrc_st/CMakeLists.txt:3 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "zipdir".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:29 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "zipdir".  Use the
  target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

Call Stack (most recent call first):
  wadsrc_st/CMakeLists.txt:5 (add_pk3)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found PkgConfig: /usr/bin/pkg-config (found version "0.28") 
-- Found OpenGL: /usr/lib/arm-linux-gnueabihf/libGL.so  
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.4.2", minimum required is "3") 
-- Checking for module 'gtk+-2.0'
--   No package 'gtk+-2.0' found
-- Checking for module 'openal'
--   Found openal, version 1.15.1
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found SDL: /usr/lib/arm-linux-gnueabihf/libSDLmain.a;/usr/lib/arm-linux-gnueabihf/libSDL.so;-lpthread (found version "1.2.15") 
-- Could not find FMOD include files
-- Could NOT find SndFile (missing:  SNDFILE_LIBRARY SNDFILE_INCLUDE_DIR) 
-- Could NOT find MPG123 (missing:  MPG123_LIBRARIES MPG123_INCLUDE_DIR) 
-- Could NOT find FluidSynth (missing:  FLUIDSYNTH_LIBRARIES FLUIDSYNTH_INCLUDE_DIR) 
-- Could not find NASM. Disabling assembly code.
-- Performing Test CAN_DO_MFPMATH
-- Performing Test CAN_DO_MFPMATH - Failed
-- Performing Test CAN_DO_ARCHSSE2
-- Performing Test CAN_DO_ARCHSSE2 - Failed
-- Looking for filelength
-- Looking for filelength - not found
-- Looking for strupr
-- Looking for strupr - not found
-- Looking for stricmp
-- Looking for stricmp - not found
-- Looking for clock_gettime in rt
-- Looking for clock_gettime in rt - found
-- Performing Test HAS_VA_COPY
-- Performing Test HAS_VA_COPY - Success
CMake Warning (dev) at src/CMakeLists.txt:707 (get_target_property):
  Policy CMP0026 is not set: Disallow use of the LOCATION target property.
  Run "cmake --help-policy CMP0026" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The LOCATION property should not be read from target "updaterevision".  Use
  the target name directly with add_custom_command, or use the generator
  expression $<TARGET_FILE>, as appropriate.

This warning is for project developers.  Use -Wno-dev to suppress it.

-- Fluid synth libs: FLUIDSYNTH_LIBRARIES-NOTFOUND
CMake Error at /usr/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the
  system variable OPENSSL_ROOT_DIR (missing: OPENSSL_LIBRARIES
  OPENSSL_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.6/Modules/FindOpenSSL.cmake:380 (find_package_handle_standard_args)
  src/CMakeLists.txt:730 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
See also "/home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/CMakeFiles/CMakeOutput.log".
See also "/home/pi/Downloads/ptitSeb-zandronum-56791949b0cf/CMakeFiles/CMakeError.log".

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 4:56 pm

you are missing openssl.

Try some

Code: Select all

sudo apt-get install libgnutls-openssl-dev

User avatar
torekk
Posts: 12
Joined: Mon May 16, 2016 1:07 am
Contact: ICQ

Re: gzdoom on raspberry pi

Mon Apr 03, 2017 11:54 pm

ptitSeb wrote:you are missing openssl.

Try some

Code: Select all

sudo apt-get install libgnutls-openssl-dev
That didn't work for me, but what did work was installing "libssl-dev".

I also had to install "libglew-dev", else the compilation failed after about 32%, but even then it fails at 99% with:

Code: Select all

/usr/bin/ld: CMakeFiles/zdoom.dir/asm_ia32/a.o: Relocations in generic ELF (EM: 3)
/usr/bin/ld: CMakeFiles/zdoom.dir/asm_ia32/a.o: Relocations in generic ELF (EM: 3)
CMakeFiles/zdoom.dir/asm_ia32/a.o: error adding symbols: File in wrong format
collect2: error: ld returned 1 exit status
src/CMakeFiles/zdoom.dir/build.make:11057: recipe for target 'zandronum' failed
make[2]: *** [zandronum] Error 1
CMakeFiles/Makefile2:1032: recipe for target 'src/CMakeFiles/zdoom.dir/all' failed
make[1]: *** [src/CMakeFiles/zdoom.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 8:12 am

You need to set NO_ASM to ON.
you can use ccmake, the curse gui for cmake, to easily change parameters before compile.

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 8:54 am

Anyway, I have just pushed a change to my repo to make NO_ASM default now.

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 9:04 am

How well does this run maybe 30 or 60 fps

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 10:12 am

when i launch using gl4es it does'nt work in gl renderer.when using only ./zandronum it gives me a black screen

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 10:53 am

after that i edited zandronum.ini it runs in standard x11 but slowish.gl4es gives me this:

Code: Select all

LIBGL: Initialising gl4es
LIBGL: v0.9.5 built on Apr  2 2017 09:28:39
LIBGL: framebuffer output enabled
LIBGL:loaded: libbcm_host.so
LIBGL:loaded: libvcos.so
LIBGL:loaded: libGLESv1_CM.so
LIBGL:loaded: libEGL.so
LIBGL: Extension GL_OES_framebuffer_object detected and used
LIBGL: Extension GL_OES_depth24 detected and used
LIBGL: Extension GL_OES_rgb8_rgba8 detected and used
LIBGL: Extension GL_EXT_texture_format_BGRA8888 detected and used
LIBGL: Max texture size: 2048
LIBGL: Texture Units: 4, Max lights: 8
LIBGL: Implementation Read is GL_RGBA/GL_UNSIGNED_BYTE
LIBGL: Current folder is:/home/pi/zandronum

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 10:56 am

Mmmm, seems like I have introduce a bug and I get a crash trying to use glBlendEquation on my VM. I'll try to fix that (in gl4es)

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 11:06 am

I have fixed gl4es. But it seems your GLES1.1 driver doesn't expose BlendEquation extension anyway.

I still have to fix my Zandronum repo to manque Pandora specific changes (800x480 forced resolution, special keymap...) behind a PANDORA define. I'm working on it now.

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 11:36 am

@raysaaron

I have pushed some changes to gl4es (fixing a bug with glBlendEquation) and to Zandronum (moving all Pandora code behind a PANDORA define).

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 12:45 pm

i've tried updateing my gl4es driver but it did'nt work

ptitSeb
Posts: 132
Joined: Tue May 19, 2015 2:49 pm

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 1:14 pm

What do you mean by "it doesn't work"? It doesn't start and crash? just exit? give a black screen (in that case, try to remove ~/.config/zandronum or whatever the folder of the config is on your machine).

Aso, I'm surprised by the small number of extension GL4ES found in the previous copy of the console you pasted earlier.
Do you have some "eglinfo" output or something similar, so I can see the extensions your GLES 1.1 driver is supporting?

raysaaron
Posts: 30
Joined: Sun Feb 12, 2017 4:20 am

Re: gzdoom on raspberry pi

Tue Apr 04, 2017 1:21 pm

Here is my gl extensions:

Code: Select all

GL_VENDOR: ptitSeb
GL_RENDERER: GLES_CM wrapper
GL_VERSION: 1.5 gl4es wrapper
GL_EXTENSIONS:
	GL_EXT_abgr
	GL_EXT_packed_pixels
	GL_EXT_compiled_vertex_array
	GL_ARB_vertex_buffer_object
	GL_ARB_vertex_array_object
	GL_ARB_vertex_buffer
	GL_EXT_vertex_array
	GL_EXT_secondary_color
	GL_EXT_texture_env_combine
	GL_ARB_multitexture
	GL_ARB_texture_env_add
	GL_ARB_texture_border_clamp
	GL_ARB_point_parameters
	GL_EXT_texture_env_add
	GL_ARB_texture_env_combine
	GL_ARB_texture_env_crossbar
	GL_ARB_texture_env_dot3
	GL_ARB_texture_mirrored_repeat
	GL_SGIS_generate_mipmap
	GL_EXT_packed_depth_stencil
	GL_EXT_draw_range_elements
	GL_EXT_bgra
	GL_ARB_texture_compression
	GL_EXT_texture_compression_s3tc
	GL_OES_texture_compression_S3TC
	GL_EXT_texture_compression_dxt3
	GL_EXT_texture_compression_dxt5
	GL_EXT_texture_compression_dxt1
	GL_ARB_point_parameters
	GL_EXT_point_parameters
	GL_EXT_stencil_wrap
	GL_SGIS_texture_edge_clamp
	GL_EXT_texture_edge_clamp
	GL_EXT_direct_state_access
	GL_EXT_multi_draw_arrays
	GL_SUN_multi_draw_arrays
	GL_ARB_multisample
	GL_EXT_texture_object
	GL_EXT_polygon_offset
	GL_GL4ES_hint
	GL_ARB_texture_rectangle
	GL_EXT_blend_color
	GL_ARB_framebuffer_object
	GL_EXT_framebuffer_object
	GL_EXT_packed_depth_stencil
	GL_ARB_draw_buffers

Return to “Gaming”

Who is online

Users browsing this forum: No registered users and 10 guests