xmrig / xmrig-cuda

NVIDIA CUDA plugin for XMRig miner
GNU General Public License v3.0
368 stars 155 forks source link

centos7 make libxmrig-cuda.so is error #99

Open wfwf1990 opened 3 years ago

wfwf1990 commented 3 years ago

/usr/local/cuda-11.1/include/vector_types.h(421): error: identifier "constexpr" is undefined

/usr/local/cuda-11.1/include/vector_types.h(421): error: member function with the same name as its class must be a constructor

/usr/local/cuda-11.1/include/vector_types.h(421): error: expected a ";"

/usr/local/cuda-11.1/include/vector_types.h(430): warning: parsing restarts here after previous syntax error

/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/stddef.h(432): error: identifier "nullptr" is undefined

/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/stddef.h(432): error: expected a ";"

/usr/include/c++/4.8.2/x86_64-redhat-linux/bits/c++config.h(1861): error: expected a ";"

/usr/include/c++/4.8.2/exception(63): error: expected a ";"

/usr/include/c++/4.8.2/exception(68): error: expected a ";"

/usr/include/c++/4.8.2/exception(76): error: expected a ";"

/usr/include/c++/4.8.2/exception(83): error: expected a ";"

/usr/include/c++/4.8.2/exception(93): error: expected a "{"

/usr/include/c++/4.8.2/bits/exception_ptr.h(64): error: function "std::current_exception" returns incomplete type "std::__exception_ptr::exception_ptr"

/usr/include/c++/4.8.2/bits/exception_ptr.h(64): error: expected a "{"

/usr/include/c++/4.8.2/bits/exception_ptr.h(79): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(81): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(82): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(84): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(86): error: declaration is incompatible with previous "std::current_exception" (64): here

/usr/include/c++/4.8.2/bits/exception_ptr.h(86): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(86): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(87): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(90): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(92): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(95): error: incomplete type is not allowed

/usr/include/c++/4.8.2/bits/exception_ptr.h(95): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(116): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(126): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(143): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(144): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(147): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(152): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(153): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(156): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(157): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(160): error: use of a local type to declare a function

/usr/include/c++/4.8.2/bits/exception_ptr.h(161): error: expected a ";"

/usr/include/c++/4.8.2/bits/exception_ptr.h(169): error: expected a ";"

/usr/include/c++/4.8.2/bits/nested_exception.h(57): error: incomplete type is not allowed

/usr/include/c++/4.8.2/bits/nested_exception.h(60): error: expected a ";"

/usr/include/c++/4.8.2/bits/nested_exception.h(66): error: expected a ";"

/usr/include/c++/4.8.2/bits/nested_exception.h(70): error: identifier "rethrow_exception" is undefined

/usr/include/c++/4.8.2/bits/nested_exception.h(73): error: function "std::nested_exception::nested_ptr" returns incomplete type "std::__exception_ptr::exception_ptr"

/usr/include/c++/4.8.2/new(95): error: expected a "{"

/usr/include/c++/4.8.2/new(110): error: identifier "__p" is undefined

/usr/include/c++/4.8.2/new(111): error: expected a "{"

/usr/include/c++/4.8.2/new(115): error: expected a "{"

/usr/include/c++/4.8.2/new(116): error: expected a "{"

/usr/local/cuda-11.1/include/crt/common_functions.h(126): warning: exception specification is incompatible with that of previous function "operator new[](std::size_t, void *)" /usr/include/c++/4.8.2/new(111): here

/usr/local/cuda-11.1/include/crt/common_functions.h(127): warning: exception specification is incompatible with that of previous function "operator delete(void , void )" /usr/include/c++/4.8.2/new(115): here

/usr/local/cuda-11.1/include/crt/common_functions.h(128): warning: exception specification is incompatible with that of previous function "operator delete[](void , void )" /usr/include/c++/4.8.2/new(116): here

/usr/include/c++/4.8.2/bits/cpp_type_traits.h(184): error: identifier "char16_t" is undefined

/usr/include/c++/4.8.2/bits/cpp_type_traits.h(191): error: identifier "char32_t" is undefined

/usr/include/c++/4.8.2/bits/cpp_type_traits.h(191): error: class "std::__is_integer<>" has already been defined

/usr/include/c++/4.8.2/bits/cpp_type_traits.h(314): error: namespace "std::__gnu_cxx" has no member "__normal_iterator"

/usr/include/c++/4.8.2/bits/cpp_type_traits.h(314): error: expected a ">"

/usr/include/c++/4.8.2/cmath(80): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(80): error: expected a ";"

/usr/include/c++/4.8.2/cmath(105): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(105): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(105): error: expected a ";"

/usr/include/c++/4.8.2/cmath(124): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(124): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(124): error: expected a ";"

/usr/include/c++/4.8.2/cmath(143): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(143): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(143): error: expected a ";"

/usr/include/c++/4.8.2/cmath(162): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(162): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(162): error: expected a ";"

/usr/include/c++/4.8.2/cmath(183): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(183): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(183): error: expected a ";"

/usr/include/c++/4.8.2/cmath(202): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(202): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(202): error: expected a ";"

/usr/include/c++/4.8.2/cmath(221): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(221): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(221): error: expected a ";"

/usr/include/c++/4.8.2/cmath(240): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(240): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(240): error: expected a ";"

/usr/include/c++/4.8.2/cmath(259): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(259): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(259): error: expected a ";"

/usr/include/c++/4.8.2/cmath(278): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(278): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(278): error: expected a ";"

/usr/include/c++/4.8.2/cmath(297): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(297): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(297): error: expected a ";"

/usr/include/c++/4.8.2/cmath(328): error: "constexpr" is not a function or static data member

/usr/include/c++/4.8.2/cmath(337): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(337): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(337): error: expected a ";"

/usr/include/c++/4.8.2/cmath(356): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(356): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(356): error: expected a ";"

/usr/include/c++/4.8.2/cmath(375): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(375): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(375): error: expected a ";"

/usr/include/c++/4.8.2/cmath(406): error: inline specifier allowed on function declarations only

/usr/include/c++/4.8.2/cmath(406): error: variable "std::constexpr" has already been defined

/usr/include/c++/4.8.2/cmath(406): error: expected a ";"

Error limit reached. 100 errors detected in the compilation of "/opt/xmrig-cuda/src/KawPow/raven/KawPow.cu". Compilation terminated. CMake Error at xmrig-cu_generated_KawPow.cu.o.cmake:264 (message): Error generating file /opt/xmrig-cuda/build/CMakeFiles/xmrig-cu.dir/src/KawPow/raven/./xmrig-cu_generated_KawPow.cu.o

make[2]: [CMakeFiles/xmrig-cu.dir/src/KawPow/raven/./xmrig-cu_generated_KawPow.cu.o] 错误 1 make[1]: [CMakeFiles/xmrig-cu.dir/all] 错误 2 make: *** [all] 错误 2

Spudz76 commented 3 years ago

Looks like your g++ is version 4.8.2 which is far too old, antiquated.

Use gcc/g++ version 7/8/9 instead. Should be some third party repo for CentOS7 with it.

Yes, it is on SCL and you can get 7. https://linuxize.com/post/how-to-install-gcc-compiler-on-centos-7/#installing-multiple-gcc-versions

7 is still kind of old. Thanks RedHat!