KhronosGroup / OpenCOLLADA

652 stars 251 forks source link

DAEValidator fails with a regex_error #603

Closed sviscapi closed 5 years ago

sviscapi commented 5 years ago

Hi,

I compiled the whole OpenCOLLADA project on CentOS 7.5 x86_64, with GCC 4.8.5.

COLLADAValidator seems to be working correctly, but DAEValidator fails with the following error:

./DAEValidator terminate called after throwing an instance of 'std::regex_error' what(): regex_error Aborted

What am I doing wrong ?

Best regards,

Samuel from CINES

https://www.cines.fr/en/

sviscapi commented 5 years ago

Hi,

I'm adding the GDB output to this issue (sorry for the wall of text):

GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-110.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/... Reading symbols from /usr/local/src/OpenCOLLADA/cmake_temp/bin/DAEValidator...done. (gdb) run Starting program: /usr/local/src/OpenCOLLADA/cmake_temp/bin/./DAEValidator [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". terminate called after throwing an instance of 'std::regex_error' what(): regex_error Program received signal SIGABRT, Aborted. 0x00007ffff6ebb277 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 56 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig); (gdb) bt

0 0x00007ffff6ebb277 in __GI_raise (sig=sig@entry=6)

at ../nptl/sysdeps/unix/sysv/linux/raise.c:56

1 0x00007ffff6ebc968 in __GI_abort () at abort.c:90

2 0x00007ffff77ca7d5 in __gnu_cxx::__verbose_terminate_handler ()

at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95

3 0x00007ffff77c8746 in cxxabiv1::terminate (handler=)

at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:38

4 0x00007ffff77c8773 in std::terminate ()

at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48

5 0x00007ffff77c8993 in cxxabiv1::cxa_throw (obj=0x6b6750,

tinfo=0x7ffff7a58890 , dest= 0x7ffff781ea60 <std::regex_error::~regex_error()>) at ../../../../libstdc++-v3/libsupc++/eh_throw.cc:87

6 0x00007ffff781ddd5 in std::__throw_regex_error (

__ecode=std::regex_constants::_S_error_brack) at ../../../../../libstdc++-v3/src/c++11/functexcept.cc:118

7 0x0000000000478c8c in std::__detail::_Compiler<char const*, std::regex_traits >::_M_bracket_expression (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:974

8 0x0000000000477c66 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_atom (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:960

9 0x00000000004767dd in std::__detail::_Compiler<char const*, std::regex_trait---Type to continue, or q to quit---

s >::_M_term (this=0x7fffffffe370) at /usr/include/c++/4.8.2/bits/regex_compiler.h:795

10 0x0000000000474d9e in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:773

11 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

12 0x0000000000473bb8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_disjunction (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:758

13 0x0000000000477b4c in std::__detail::_Compiler<char const*, std::regex_traits >::_M_atom (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:947

14 0x00000000004767dd in std::__detail::_Compiler<char const*, std::regex_traits >::_M_term (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:795

15 0x0000000000474d9e in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:773

16 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776 ---Type to continue, or q to quit---

17 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

18 0x0000000000473bb8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_disjunction (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:758

19 0x0000000000477b4c in std::__detail::_Compiler<char const*, std::regex_traits >::_M_atom (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:947

20 0x00000000004767dd in std::__detail::_Compiler<char const*, std::regex_traits >::_M_term (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:795

21 0x0000000000474d9e in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:773

22 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

23 0x0000000000473bb8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_disjunction (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:758

24 0x0000000000473c13 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_disjunction (this=0x7fffffffe370)

---Type to continue, or q to quit--- at /usr/include/c++/4.8.2/bits/regex_compiler.h:762

25 0x0000000000477b4c in std::__detail::_Compiler<char const*, std::regex_traits >::_M_atom (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:947

26 0x00000000004767dd in std::__detail::_Compiler<char const*, std::regex_traits >::_M_term (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:795

27 0x0000000000474d9e in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:773

28 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

29 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

30 0x0000000000474de8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_alternative (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:776

31 0x0000000000473bb8 in std::__detail::_Compiler<char const*, std::regex_traits >::_M_disjunction (this=0x7fffffffe370)

at /usr/include/c++/4.8.2/bits/regex_compiler.h:758

32 0x00000000004728e8 in std::__detail::_Compiler<char const*, std::regex_trait---Type to continue, or q to quit---

s >::_Compiler (this=0x7fffffffe370, b=@0x7fffffffe470: 0x494f28 "^(./)?(?:$|(.+?)(?:(\.[^.]$)|$))", e=@0x7fffffffe488: 0x494f4a "", traits=..., flags=16) at /usr/include/c++/4.8.2/bits/regex_compiler.h:729

33 0x0000000000470f21 in std::detail::compile<char const*, std::regex_traits > (

b=@0x7fffffffe470: 0x494f28 "^(./)?(?:$|(.+?)(?:(\.[^.]$)|$))", e=@0x7fffffffe488: 0x494f4a "", t=..., f=16) at /usr/include/c++/4.8.2/bits/regex_compiler.h:1105

34 0x000000000046ff97 in std::basic_regex<char, std::regex_traits >::basic_regex (this=0x6b5c60 ,

p=0x494f28 "^(./)?(?:$|(.+?)(?:(\.[^.]$)|$))", f=16) at /usr/include/c++/4.8.2/bits/regex.h:388

35 0x000000000046e46b in __static_initialization_and_destruction_0 (

__initialize_p=1, __priority=65535) at /usr/local/src/OpenCOLLADA/DAEValidator/library/src/Uri.cpp:100

36 0x000000000046e4bc in _GLOBAL__sub_I__ZN11opencollada3UriC2ERKSs ()

at /usr/local/src/OpenCOLLADA/DAEValidator/library/src/Uri.cpp:374

37 0x000000000049412d in __libc_csu_init ()

38 0x00007ffff6ea73d5 in __libc_start_main (main=

0x456fed <main(int, char**)>, argc=1, ubp_av=0x7fffffffe608, init=0x4940e0 <__libc_csu_init>, fini=, rtld_fini=, stack_end=0x7fffffffe5f8) ---Type to continue, or q to quit--- at ../csu/libc-start.c:233

39 0x0000000000456f29 in _start ()

Best regards,

Samuel

sviscapi commented 5 years ago

Dear @RemiArnaud ,

Would you have any news regarding this issue ?

Best regards,

Samuel from CINES

sviscapi commented 5 years ago

Dear @pjcozzi ,

Did you receive the e-mail I sent you regarding this issue ?

Best regards,

Samuel from CINES

sviscapi commented 5 years ago

Dear all,

DAEValidator just requires a more modern version of GCC than the one provided by CentOS 7.

I used softwarecollections.org to avoid this issue:

https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/

Best regards,

Samuel from CINES