Skip to content

Error in running example #214

@wzz1234wzz

Description

@wzz1234wzz

When compiling the examples in the warehouse in centos7 environment, the following error is reported:

In file included from /opt/thirdpart/ck/include/clickhouse/columns/column.h:3,
from /opt/thirdpart/ck/include/clickhouse/block.h:3,
from /opt/thirdpart/ck/include/clickhouse/query.h:3,
from /opt/thirdpart/ck/include/clickhouse/client.h:3,
from /home/centos/ckTest/src/main.cpp:1:
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:215:10: error: 'string_view' in namespace 'std' does not name a type
215 | std::string_view GetEnumName(int16_t value) const;
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:215:5: note: 'std::string_view' is only available from C++17 onwards
215 | std::string_view GetEnumName(int16_t value) const;
| ^~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:56: error: 'string_view' is not a member of 'std'
221 | using ValueToNameType = std::map<int16_t, std::string_view>;
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:56: note: 'std::string_view' is only available from C++17 onwards
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:56: error: 'string_view' is not a member of 'std'
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:56: note: 'std::string_view' is only available from C++17 onwards
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:67: error: template argument 2 is invalid
221 | using ValueToNameType = std::map<int16_t, std::string_view>;
| ^
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:221:67: error: template argument 4 is invalid
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:223:33: error: 'ValueToNameType' does not name a type
223 | using ValueToNameIterator = ValueToNameType::const_iterator;
| ^~~~~~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:225:5: error: 'ValueToNameType' does not name a type
225 | ValueToNameType value_to_name_;
| ^~~~~~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:229:5: error: 'ValueToNameIterator' does not name a type
229 | ValueToNameIterator BeginValueToName() const;
| ^~~~~~~~~~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../types/types.h:230:5: error: 'ValueToNameIterator' does not name a type
230 | ValueToNameIterator EndValueToName() const;
| ^~~~~~~~~~~~~~~~~~~
In file included from /opt/thirdpart/ck/include/clickhouse/columns/column.h:4,
from /opt/thirdpart/ck/include/clickhouse/block.h:3,
from /opt/thirdpart/ck/include/clickhouse/query.h:3,
from /opt/thirdpart/ck/include/clickhouse/client.h:3,
from /home/centos/ckTest/src/main.cpp:1:
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:21:27: error: 'string_view' in namespace 'std' does not name a type
21 | using DataType = std::string_view;
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:21:22: note: 'std::string_view' is only available from C++17 onwards
21 | using DataType = std::string_view;
| ^~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:24:11: error: 'DataType' does not name a type
24 | const DataType data;
| ^~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:40:31: error: 'DataType' has not been declared
40 | ItemView(Type::Code type, DataType data)
| ^~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:78:17: error: 'string_view' in namespace 'std' does not name a type
78 | inline std::string_view AsBinaryData() const {
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:78:12: note: 'std::string_view' is only available from C++17 onwards
78 | inline std::string_view AsBinaryData() const {
| ^~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:83:47: error: 'DataType' has not been declared
83 | static void ValidateData(Type::Code type, DataType data);
| ^~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h: In member function 'auto clickhouse::ItemView::ConvertToStorageValue(const T&)':
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17'
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:28: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^~~~~~~~~
| is_same
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:43: error: 'string_view' is not a member of 'std'
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:43: note: 'std::string_view' is only available from C++17 onwards
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:57: error: expected primary-expression before '>' token
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:59: error: expected primary-expression before '||' token
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:67: error: 'is_same_v' is not a member of 'std'; did you mean 'is_same'?
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^~~~~~~~~
| is_same
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:88: error: expected primary-expression before ',' token
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:91: error: expected primary-expression before '>' token
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:29:92: error: expected primary-expression before ')' token
29 | if constexpr (std::is_same_v<std::string_view, T> || std::is_same_v<std::string, T>) {
| ^
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:30:25: error: 'string_view' is not a member of 'std'
30 | return std::string_view{t};
| ^~~~~~~~~~~
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:30:25: note: 'std::string_view' is only available from C++17 onwards
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:30:36: error: expected ';' before '{' token
30 | return std::string_view{t};
| ^
| ;
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:30:38: error: expected ';' before '}' token
30 | return std::string_view{t};
| ^
| ;
/opt/thirdpart/ck/include/clickhouse/columns/../columns/itemview.h:31:19: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17'
31 | } else if constexpr (std::is_fundamental_v || std::is_same_v<Int128, std::decay_t>) {
| ^~~~~~~~~

Metadata

Metadata

Assignees

No one assigned

    Labels

    platform-supportSome plaftorm (or platform/compiler/libs combination) is not properly supportedpriority-lowMinor issue or bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions