KhronosGroup / KhronosGroup/OpenCOLLADA

OpenCollada does not support the Clang compiler (was: Debian Clang 3.6 Sid branch)

Open
#293 8 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
C++
Stars
679
Forks
260
PR merge metrics
No merged PRs in 30d

Description

It has been well over a year and this bug has continued to surface, forcing me to use GCC to compile OpenCollada within it's own tree and within Blender:

[ 10%] Building CXX object COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/src/COLLADABUURI.cpp.o
In file included from /home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/src/COLLADABUURI.cpp:15:
In file included from /home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/include/COLLADABUHashFunctions.h:14:
In file included from /home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/include/COLLADABUhash_map.h:74:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/ext/hash_map:60:
/usr/bin/../lib/gcc/x86_64-linux-gnu/4.9/../../../../include/c++/4.9/backward/backward_warning.h:32:2: warning:
This file includes at least one deprecated or antiquated header which may be removed
without further notice at a future date. Please use a non-deprecated interface with
equivalent functionality instead. For a listing of replacement headers and interfaces,
consult the file backward_warning.h. To disable this warning use -Wno-deprecated.
[-W#warnings]
# warning \

^
In file included from /home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/src/COLLADABUURI.cpp:15:
In file included from /home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/include/COLLADABUHashFunctions.h:14:
/home/mdriftmeyer/Projects/OpenCollada/OpenCOLLADA/COLLADABaseUtils/include/COLLADABUhash_map.h:77:18: fatal error:
'ext/hash_fun.h' file not found
#include
^
1 warning and 1 error generated.
COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/build.make:77: recipe for target 'COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/src/COLLADABUURI.cpp.o' failed
make[2]: **\* [COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/src/COLLADABUURI.cpp.o] Error 1
CMakeFiles/Makefile2:425: recipe for target 'COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/all' failed
make[1]: **\* [COLLADABaseUtils/CMakeFiles/OpenCOLLADABaseUtils_shared.dir/all] Error 2
Makefile:117: recipe for target 'all' failed
make: **\* [all] Error 2

---

Any ideas how come it can't find this, or is this some insane hard-coded GCC hook that is screwed up in Debian?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with COLLADABaseUtils/include/COLLADABUhash_map.h around the ext/hash_fun.h include and the COLLADABUURI.cpp build failure shown in the report. Reproduce the build with Clang and inspect the surrounding CMake configuration to determine why the header is unavailable. Done means OpenCOLLADA builds successfully with Clang in the reported configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.