[Scummvm-tracker] [ScummVM :: Bugs] #15052: can not compile scummvm source gcc version: 14.0.1 20240326 (experimental)

ScummVM :: Bugs trac at scummvm.org
Mon Apr 1 21:35:36 UTC 2024


#15052: can not compile scummvm source gcc version: 14.0.1 20240326 (experimental)
-------------------------+-----------------------
Reporter:  rubyFeedback  |      Owner:  (none)
    Type:  defect        |     Status:  new
Priority:  low           |  Component:  --Unset--
 Version:                |   Keywords:
    Game:                |
-------------------------+-----------------------
 RANLIB engines/glk/libglk.a
      AR engines/gnap/libgnap.a
      RANLIB engines/gnap/libgnap.a
      AR engines/gob/libgob.a
      RANLIB engines/gob/libgob.a
      AR engines/griffon/libgriffon.a
      RANLIB engines/griffon/libgriffon.a
      AR engines/grim/libgrim.a
      RANLIB engines/grim/libgrim.a
      AR engines/groovie/libgroovie.a
      RANLIB engines/groovie/libgroovie.a
      AR engines/hadesch/libhadesch.a
      RANLIB engines/hadesch/libhadesch.a
      AR engines/hdb/libhdb.a
      RANLIB engines/hdb/libhdb.a
      AR engines/hopkins/libhopkins.a
      RANLIB engines/hopkins/libhopkins.a
      AR engines/hpl1/libhpl1.a
      RANLIB engines/hpl1/libhpl1.a
      AR engines/hugo/libhugo.a
      RANLIB engines/hugo/libhugo.a
      AR engines/hypno/libhypno.a
      RANLIB engines/hypno/libhypno.a
      C++ engines/icb/actor.o
     In file included from ../graphics/opengl/context.h:25,
      from ../common/system.h:34,
      from ../engines/icb/debug_pc.h:30,
      from ../engines/icb/p4_generic_pc.h:31,
      from ../engines/icb/p4_generic.h:31,
      from ../engines/icb/debug.h:30,
      from ../engines/icb/string_vest.h:31,
      from ../engines/icb/p4.h:32,
      from ../engines/icb/global_objects.h:30,
      from ../engines/icb/actor.cpp:27:
     ../common/singleton.h:44:21: warning: template-id not allowed for
 constructor in C++20 [-Wtemplate-id-cdtor]
      44 | Singleton<T>(const Singleton<T> &);
      | ^
     ../common/singleton.h:44:21: note: remove the '< >'
     ../common/singleton.h:91:21: warning: template-id not allowed for
 constructor in C++20 [-Wtemplate-id-cdtor]
      91 | Singleton<T>() { }
      | ^
     ../common/singleton.h:91:21: note: remove the '< >'
     ../common/singleton.h:92:17: warning: template-id not allowed for
 destructor in C++20 [-Wtemplate-id-cdtor]
      92 | virtual ~Singleton<T>() { }
      | ^
     ../common/singleton.h:92:17: note: remove the '< >'
     In file included from ../engines/icb/debug.h:32:
     ../engines/icb/common/px_array.h: In member function 'const Type&
 ICB::rcActArray<Type>::operator[](uint32) const':
     ../engines/icb/common/px_array.h:105:66: error: assignment of member
 'm_userPosition' in read-only object
      105 | ((const rcActArray<Type> *)this)->m_userPosition = n + 1;
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
     ../engines/icb/common/px_array.h: In member function 'const Type
 ICB::rcIntArray<Type>::operator[](uint32) const':
     ../engines/icb/common/px_array.h:308:66: error: assignment of member
 'm_userPosition' in read-only object
      308 | ((const rcIntArray<Type> *)this)->m_userPosition = index + 1;
      | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
     make: *** [../Makefile.common:178: engines/icb/actor.o] Error 1

 So I am using gcc git clone checkout from some days ago, and evidently
 scummvm may not have been tested with this - so I am just reporting it.
 Either way perhaps someone can have a look here, if this is solely related
 to C++ 20, as eventually that may have to be supported (with upcoming
 stable gcc releases perhaps).

 I then tried to compile via gcc 10.5.0, as I noticed that I can compile
 more programs that way, using an older GCC. However had this led to
 another error:

     e.fragment ../engines/playground3d/shaders/playground3d_cube.vertex
 ../engines/playground3d/shaders/playground3d_fade.fragment
 ../engines/playground3d/shaders/playground3d_fade.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Ambient_Color.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Bump2D_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Bump2D_Light.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpColorSpec_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpColorSpec_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Bump_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Bump_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Bump_Light_Spot_pass2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpSpec2D_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpSpec2D_Light.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpSpec_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpSpec_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_BumpSpec_Light_Spot_pass2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Color.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_ColorMul.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Color.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_EnvMap_Reflect.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_EnvMap_Reflect.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light_Spot_pass1.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light_Spot_pass2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light_Spot.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Diffuse_Light.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_DiffuseSpec_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_DiffuseSpec_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_DiffuseSpec_Light_Spot_pass2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_DiffuseSpec_Light_Spot.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_DiffuseSpec_Light.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Bump_Light.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_p1.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_p1.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_p2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_p2.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_Spot.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback01_Diffuse_Light_Spot_p2.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_Diffuse_Light_p1.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_Diffuse_Light_p1.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_Diffuse_Light_p2.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_DIffuse_Light_Spot_p2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_Diffuse_Light_Spot_p2.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_DIffuse_Light_Spot_p3.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fallback02_Diffuse_Light_Spot_p3.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Solid.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Solid.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Trans_Alpha.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Trans_Mod.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Trans_ModX2.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Fog_Trans.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_gamma_correction.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_gamma_correction.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Bloom.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Bloom.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Blur_2D.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Blur_Rect.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Blur.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_DoF.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_DoF.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Fallback01_Blur_2D.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Fallback01_Blur_Rect.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Motion.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Motion_staticloop.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Motion.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Offset.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_PostEffect_Offset.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_refract.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_refract_special.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_refract.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_refract_water.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_refract_water.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_ShadowExtrude.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_ShadowExtrude.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Water_Diffuse.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Water_Diffuse.vertex
 ../engines/hpl1/engine/impl/shaders/hpl1_Water_Fog.fragment
 ../engines/hpl1/engine/impl/shaders/hpl1_Water_Fog.vertex
 ../engines/freescape/shaders/freescape_bitmap.fragment
 ../engines/freescape/shaders/freescape_bitmap.vertex
 ../engines/freescape/shaders/freescape_triangle.fragment
 ../engines/freescape/shaders/freescape_triangle.vertex
 "/home/Programs/Scummvm/2.8.1//share/scummvm/shaders"
     install -d "/home/Programs/Scummvm/2.8.1//bin"
     install -c -m 755 "./scummvm"
 "/home/Programs/Scummvm/2.8.1//bin/scummvm"
     install -d "/home/Programs/Scummvm/2.8.1//lib/scummvm/"
     install -c -m 644 "/home/Programs/Scummvm/2.8.1//lib/scummvm/"
     install: missing destination file operand after
 '/home/Programs/Scummvm/2.8.1//lib/scummvm/'
     Try 'install --help' for more information.
     make: *** [../ports.mk:32: install] Error 1


 I had the error:

     install: missing destination file operand after
 '/home/Programs/Scummvm/2.8.1//lib/scummvm/'

 Before but did not report it. I think there is something
 wrong with the build system scummvm uses, since I can
 compile other GNU configure based programs just fine.

 (And perhaps it would be time to switch to cmake or
 meson/ninja; GNU configure is such a huge mess really.)
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/15052>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list