-
Notifications
You must be signed in to change notification settings - Fork 91
Description
Hello ,
I'm currently trying to build your example plugin of the custom asset resolver, and I'm running into a bit of a problem building it and I was wondering if you had maybe encountered a similar error.
I'm on a Centos 7 machine, with a built version of USD (21.02), devtoolset-8 (for gcc 8.3.1), and cmake (3.14.6).
Running the USD_INSTALL_ROOT=/home/fernandos/Documents/USD cmake ..command seems to work, the problem occurs when running the make install command:
[ 50%] Building CXX object src/CMakeFiles/URIResolver.dir/resolver.cpp.o
In file included from /home/fernandos/Documents/USD/include/pxr/base/tf/enum.h:33,
from /home/fernandos/Documents/USD/include/pxr/base/tf/stringUtils.h:36,
from /home/fernandos/Documents/USD/include/pxr/base/vt/value.h:42,
from /home/fernandos/Documents/USD/include/pxr/usd/ar/threadLocalScopedCache.h:30,
from /home/fernandos/Documents/USD/include/pxr/usd/ar/defaultResolver_v1.h:37,
from /home/fernandos/Documents/USD/include/pxr/usd/ar/defaultResolver.h:35,
from /home/fernandos/Documents/USD-Cookbook-master/plugins/custom_resolver/project/src/resolver.cpp:2:
/home/fernandos/Documents/USD/include/pxr/base/tf/hash.h:44:6: error: ‘enable_if_t’ in namespace ‘std’ does not name a template type
std::enable_if_t<std::is_integral<T>::value>
^~~~~~~~~~~
...
This type error seems to indicate an error possibly caused by a wrong version of gcc. I know that enable_if_t was added in c++14, so if you have an old compiler (such as the standard gcc 4.8.1 on Centos 7) it would throw this error as it standard uses c++11 to compile.
However, I'm using the devtoolset-8 environment and everything seems to indicate that I am using gcc 8.3.1 to compile. Now I noticed that you previously built this project with USD 19.07, might it be that that version was still compiled with and old version of gcc that used c++11 as the standard and that the makefile somehow uses a wrong version of gcc (the standard 4.8.1 version on Centos 7)(This does not seem the case, but I thought I ask)
So I guess my question is: is it normal that I am encountering this problem with USD 21.02? or are you able to build it without any issues with that USD version?