Cool VL Viewer forum

View unanswered posts | View active topics It is currently 2025-07-19 02:07:37



Reply to topic  [ 3 posts ] 
Compiling the viewer fails: "Translation_override" at 53% 
Author Message

Joined: 2011-09-27 11:18:31
Posts: 243
Reply with quote
Hello.

During building the viewer, I got this error:
Code:
[ 53%] Building CXX object llgltf/CMakeFiles/llgltf.dir/llgltfjointdata.cpp.o
In file included from /home/nikos/Desktop/linden/include/glm/detail/type_vec4.hpp:507,
                 from /home/nikos/Desktop/linden/include/glm/ext/vector_bool4.hpp:5,
                 from /home/nikos/Desktop/linden/include/glm/vec4.hpp:5,
                 from /home/nikos/Desktop/linden/indra/llgltf/llgltfglm.h:60,
                 from /home/nikos/Desktop/linden/viewer-linux-x86_64-release/llgltf/CMakeFiles/llgltf.dir/cmake_pch.hxx:6,
                 from <command-line>:
In static member function ‘static constexpr glm::vec<4, T, Q> glm::detail::compute_vec4_mul<T, Q, Aligned>::call(const glm::vec<4, T, Q>&, const glm::vec<4, T, Q>&) [with T = float; glm::qualifier Q = glm::packed_highp; bool Aligned = false]’,
    inlined from ‘constexpr glm::vec<4, T, Q>& glm::vec<4, T, Q>::operator*=(U) [with U = float; T = float; glm::qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:585:85,
    inlined from ‘constexpr glm::vec<4, T, Q> glm::operator*(const vec<4, T, Q>&, T) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:868:26,
    inlined from ‘constexpr glm::mat<4, 4, T, Q> glm::translate(const mat<4, 4, T, Q>&, const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/ext/matrix_transform.inl:13:48,
    inlined from ‘glm::mat<4, 4, T, Q> glm::translate(const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/transform.inl:8:19,
    inlined from ‘glm::mat<4, 4, T, Q> glm::recompose(const vec<3, T, Q>&, const qua<T, Q>&, const vec<3, T, Q>&, const vec<3, T, Q>&, const vec<4, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/matrix_decompose.inl:209:22,
    inlined from ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’ at /home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:272:18:
/home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:31:32: error: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::z’ may be used uninitialized [-Werror=maybe-uninitialized]
   31 |                         return vec<4, T, Q>(a.x * b.x, a.y * b.y, a.z * b.z, a.w * b.w);
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp: In member function ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’:
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:266:22: note: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::z’ was declared here
  266 |                 vec3 translation_override, skew, scale;
      |                      ^~~~~~~~~~~~~~~~~~~~
In static member function ‘static constexpr glm::vec<4, T, Q> glm::detail::compute_vec4_mul<T, Q, Aligned>::call(const glm::vec<4, T, Q>&, const glm::vec<4, T, Q>&) [with T = float; glm::qualifier Q = glm::packed_highp; bool Aligned = false]’,
    inlined from ‘constexpr glm::vec<4, T, Q>& glm::vec<4, T, Q>::operator*=(U) [with U = float; T = float; glm::qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:585:85,
    inlined from ‘constexpr glm::vec<4, T, Q> glm::operator*(const vec<4, T, Q>&, T) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:868:26,
    inlined from ‘constexpr glm::mat<4, 4, T, Q> glm::translate(const mat<4, 4, T, Q>&, const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/ext/matrix_transform.inl:13:34,
    inlined from ‘glm::mat<4, 4, T, Q> glm::translate(const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/transform.inl:8:19,
    inlined from ‘glm::mat<4, 4, T, Q> glm::recompose(const vec<3, T, Q>&, const qua<T, Q>&, const vec<3, T, Q>&, const vec<3, T, Q>&, const vec<4, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/matrix_decompose.inl:209:22,
    inlined from ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’ at /home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:272:18:
/home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:31:32: error: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::y’ may be used uninitialized [-Werror=maybe-uninitialized]
   31 |                         return vec<4, T, Q>(a.x * b.x, a.y * b.y, a.z * b.z, a.w * b.w);
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp: In member function ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’:
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:266:22: note: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::y’ was declared here
  266 |                 vec3 translation_override, skew, scale;
      |                      ^~~~~~~~~~~~~~~~~~~~
In static member function ‘static constexpr glm::vec<4, T, Q> glm::detail::compute_vec4_mul<T, Q, Aligned>::call(const glm::vec<4, T, Q>&, const glm::vec<4, T, Q>&) [with T = float; glm::qualifier Q = glm::packed_highp; bool Aligned = false]’,
    inlined from ‘constexpr glm::vec<4, T, Q>& glm::vec<4, T, Q>::operator*=(U) [with U = float; T = float; glm::qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:585:85,
    inlined from ‘constexpr glm::vec<4, T, Q> glm::operator*(const vec<4, T, Q>&, T) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:868:26,
    inlined from ‘constexpr glm::mat<4, 4, T, Q> glm::translate(const mat<4, 4, T, Q>&, const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/ext/matrix_transform.inl:13:20,
    inlined from ‘glm::mat<4, 4, T, Q> glm::translate(const vec<3, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/transform.inl:8:19,
    inlined from ‘glm::mat<4, 4, T, Q> glm::recompose(const vec<3, T, Q>&, const qua<T, Q>&, const vec<3, T, Q>&, const vec<3, T, Q>&, const vec<4, T, Q>&) [with T = float; qualifier Q = glm::packed_highp]’ at /home/nikos/Desktop/linden/include/glm/gtx/matrix_decompose.inl:209:22,
    inlined from ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’ at /home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:272:18:
/home/nikos/Desktop/linden/include/glm/detail/type_vec4.inl:31:32: error: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::x’ may be used uninitialized [-Werror=maybe-uninitialized]
   31 |                         return vec<4, T, Q>(a.x * b.x, a.y * b.y, a.z * b.z, a.w * b.w);
      |                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp: In member function ‘void LLGLTFLoader::buildOverrideMatrix(LLGLTF::JointData&, joints_data_map_t&, joints_name_to_node_map_t&, LLGLTF::mat4&, LLGLTF::mat4&) const’:
/home/nikos/Desktop/linden/indra/llgltf/llgltfloader.cpp:266:22: note: ‘translation_override.glm::vec<3, float, glm::packed_highp>::<anonymous>.glm::vec<3, float, glm::packed_highp>::<unnamed union>::x’ was declared here
  266 |                 vec3 translation_override, skew, scale;
      |                      ^~~~~~~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [llgltf/CMakeFiles/llgltf.dir/build.make:176: llgltf/CMakeFiles/llgltf.dir/llgltfloader.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:967: llgltf/CMakeFiles/llgltf.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
make: Leaving directory '/home/nikos/Desktop/linden/viewer-linux-x86_64-release'
Error: the command 'make' exited with status 2


The version of gcc is
Code:
nikos@Archytas ~/Desktop/linden $ gcc --version
gcc (Gentoo 14.3.0 p8) 14.3.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Any other information you want me to provide, please ask.


2025-06-29 10:54:44
Profile

Joined: 2009-03-17 18:42:51
Posts: 6008
Reply with quote
This is obviously a gcc 14.3 bug (inappropriate/bogus warning)... Like specified in the (current: will change over time and current gcc versions) linden/doc/LinuxBuildHowto.txt file:
Quote:
(1) The building process was only tested and working (without any warning) with gcc/g++ v8.3.0, v11.4.0 and v15.1.0. Note that I won't support a viewer built with other gcc versions.
When you encounter such an issue (which is not a viewer bug by the way, so don't post it in the bug report forum, please), with "all warnings being treated as errors" in the gcc messages, simply use the --ignore-warnings (or -i for short) option of the linux-build.sh script.

Alternatively, you can edit the linden/indra/llgltf/llgltfloader.cpp file to read:
Code:
.../...
#include "linden_common.h"

// Work-around for a spurious and bogus warning in glm headers seen with GCC 14
// (and maybe 12 and 13, but definitely not with 11 and 15). HB
#if LL_GNUC
# pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
#endif

#include "glm/ext/vector_uint4_sized.hpp"      // For glm::u16vec4
.../...
This compiler bug workaround will be part of next release.


2025-06-29 12:43:01
Profile WWW

Joined: 2011-09-27 11:18:31
Posts: 243
Reply with quote
Ah, I see. I had never ran across this issue in the past, so I did not know. Thank you very much!


2025-06-29 14:43:01
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 3 posts ] 

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.