好的,所以我尝试学习一些 openCL 并且我正在使用 Windows,但是我不想购买 Visual Studio 许可证并选择了 gcc(最新的 mingw 安装程序)。我也非常喜欢对象,并想使用 c++ 包装器 api。因此,在我使用 CL/cl.h 验证我的设置适用于最小示例后,我更改为 CL/cl.hpp 并尝试编译一个空程序:
#define __NO_STD_VECTOR // Use cl::vector instead of STL version
#define __CL_ENABLE_EXCEPTIONS
#include <CL/cl.hpp>
using namespace cl;
int main() {
}
它给了我很多错误:
mingw32-g++.exe -Wall -fexceptions -g -I"C:\Program Files (x86)\AMD APP\include" -c C:\Users\Rialgar\CodeBlocksProjects\OpenCL_FirstSteps\main.cpp -o obj\Debug\main.o
In file included from C:\Users\Rialgar\CodeBlocksProjects\OpenCL_FirstSteps\main.cpp:3:0:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5929:9: Warnung: Bezeichner »static_assert« wird in C++11 zum Schlüsselwort [-Wc++0x-compat]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Funktion »cl_int cl::copy(IteratorType, IteratorType, cl::Buffer&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5157:9: Fehler: »stdext« wurde nicht deklariert
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5157:48: Fehler: expected primary-expression before »*« token
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5157:49: Fehler: expected primary-expression before »>« token
In file included from C:\Users\Rialgar\CodeBlocksProjects\OpenCL_FirstSteps\main.cpp:3:0:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5929:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:5929:216: Anmerkung: (mit »-fpermissive« wird G++ den Code akzeptieren, aber die Verwendung eines nicht deklarierten Namens ist veraltet)
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:6297:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:6657:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, T28, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:7009:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:7353:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:7689:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:8017:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:8337:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:8649:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:8953:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:9249:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:9537:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:9817:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:10089:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:10353:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:10609:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:10857:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:11097:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:11329:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:11553:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:11769:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:11977:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:12177:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, T8, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:12369:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, T7, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:12553:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, T6, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:12729:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, T5, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:12897:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, T4, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:13057:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, T3, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:13209:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, T2, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:13353:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, T1, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:13489:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp: In Konstruktor »cl::detail::functionImplementation_<T0, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType, cl::detail::NullType>::functionImplementation_(const FunctorType&)«:
C:\Program Files (x86)\AMD APP\include/CL/cl.hpp:13617:216: Fehler: es gibt keine Argumente für »static_assert«, die von einem Templateparameter abhängen, weshalb eine Deklaration von »static_assert« verfügbar sein muss [-fpermissive]
(对不起德语错误消息,我还不能更改 gcc 的语言)因为第一个是关于 C++11 的警告,我想我现在可以忽略它并希望在未来版本的 OpenCL 中修复. 第一条错误消息说 stdext 没有定义,所以我用谷歌搜索:结果说 stdext 是 MS 特定的命名空间。
我还没有深入研究其他错误,但他们说“static_assert”没有参数,具体取决于模板参数,因此需要声明“static_assert”。
我的问题:这是否意味着我不能在没有 MSVC 的情况下在 windows 下使用 c++ 包装器,或者是否有解决方法,例如替代 cl.hpp?
提前感谢您的时间和帮助。