darglein/TinyTorch

Compile Error in mac

Closed this issue · 1 comments

Hello, I tried to compile the project in mac and met this error:

❯ make
[  2%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/demangle.cc.o
[  4%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/logging.cc.o
[  6%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/raw_logging.cc.o
[  8%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/symbolize.cc.o
[ 10%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/utilities.cc.o
[ 12%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/vlog_is_on.cc.o
[ 14%] Building CXX object External/glog/CMakeFiles/glog_internal.dir/src/signalhandler.cc.o
[ 14%] Built target glog_internal
[ 17%] Linking CXX shared library libglog.dylib
[ 17%] Built target glog
[ 19%] Linking CXX static library libglogtest.a
[ 19%] Built target glogtest
[ 21%] Building CXX object External/glog/CMakeFiles/logging_unittest.dir/src/logging_unittest.cc.o
[ 23%] Linking CXX executable logging_unittest
[ 23%] Built target logging_unittest
[ 25%] Building CXX object External/glog/CMakeFiles/stl_logging_unittest.dir/src/stl_logging_unittest.cc.o
[ 27%] Linking CXX executable stl_logging_unittest
[ 27%] Built target stl_logging_unittest
[ 29%] Building CXX object External/glog/CMakeFiles/demangle_unittest.dir/src/demangle_unittest.cc.o
[ 31%] Linking CXX executable demangle_unittest
[ 31%] Built target demangle_unittest
[ 34%] Building CXX object External/glog/CMakeFiles/stacktrace_unittest.dir/src/stacktrace_unittest.cc.o
[ 36%] Linking CXX executable stacktrace_unittest
[ 36%] Built target stacktrace_unittest
[ 38%] Building CXX object External/glog/CMakeFiles/utilities_unittest.dir/src/utilities_unittest.cc.o
[ 40%] Linking CXX executable utilities_unittest
[ 40%] Built target utilities_unittest
[ 42%] Building CXX object External/glog/CMakeFiles/cleanup_immediately_unittest.dir/src/cleanup_immediately_unittest.cc.o
[ 44%] Linking CXX executable cleanup_immediately_unittest
[ 44%] Built target cleanup_immediately_unittest
[ 46%] Building CXX object External/glog/CMakeFiles/cleanup_with_absolute_prefix_unittest.dir/src/cleanup_with_absolute_prefix_unittest.cc.o
[ 48%] Linking CXX executable cleanup_with_absolute_prefix_unittest
[ 48%] Built target cleanup_with_absolute_prefix_unittest
[ 51%] Building CXX object External/glog/CMakeFiles/cleanup_with_relative_prefix_unittest.dir/src/cleanup_with_relative_prefix_unittest.cc.o
[ 53%] Linking CXX executable cleanup_with_relative_prefix_unittest
[ 53%] Built target cleanup_with_relative_prefix_unittest
[ 55%] Building CXX object src/CMakeFiles/torch.dir/torch/core/backward.cpp.o
In file included from /Users/yewentao/Desktop/TinyTorch/src/torch/core/backward.cpp:1:
In file included from /Users/yewentao/Desktop/TinyTorch/src/torch/core/backward.h:2:
In file included from /Users/yewentao/Desktop/TinyTorch/src/./torch/core/tensor.h:13:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/algorithm:653:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/functional:500:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__functional/function.h:20:
/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__memory/shared_ptr.h:615:13: error: static_assert failed due to requirement 'is_array<tinytorch::TensorImpl>::value' "std::shared_ptr<T>::operator[] is only valid when T is an array type."
            static_assert(is_array<_Tp>::value,
            ^             ~~~~~~~~~~~~~~~~~~~~
/Users/yewentao/Desktop/TinyTorch/src/./torch/core/tensor.h:35:30: note: in instantiation of member function 'std::shared_ptr<tinytorch::TensorImpl>::operator[]' requested here
template class TINYTORCH_API shared_ptr<tinytorch::TensorImpl>;
                             ^
In file included from /Users/yewentao/Desktop/TinyTorch/src/torch/core/backward.cpp:1:
In file included from /Users/yewentao/Desktop/TinyTorch/src/torch/core/backward.h:2:
In file included from /Users/yewentao/Desktop/TinyTorch/src/./torch/core/tensor.h:13:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/algorithm:653:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/functional:500:
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__functional/function.h:20:
/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/usr/include/c++/v1/__memory/shared_ptr.h:617:20: error: subscript of pointer to incomplete type 'std::shared_ptr<tinytorch::TensorImpl>::element_type' (aka 'tinytorch::TensorImpl')
            return __ptr_[__i];
                   ^~~~~~
/Users/yewentao/Desktop/TinyTorch/src/./torch/core/tensor.h:28:8: note: forward declaration of 'tinytorch::TensorImpl'
struct TensorImpl;
       ^
2 errors generated.
make[2]: *** [src/CMakeFiles/torch.dir/torch/core/backward.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/torch.dir/all] Error 2
make: *** [all] Error 2

Could you please fix this?

Close this issue due to lack of response.