I encountered the following error in CentOS 7 with Clang version 7.
OS : CentOS 7
Compiler : llvm-toolset-7.0-clang
SQLiteCpp Version : 3.3.1
./build.sh
-- The C compiler identification is Clang 7.0.1
-- The CXX compiler identification is Clang 7.0.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using c++ standard c++11
-- CMake version: 3.6.2
-- Project version: 3.3.1
-- Using Stack Protection hardening
-- CMAKE_CXX_COMPILER '/usr/bin/c++' 'Clang' '7.0.1'
-- CMAKE_CXX_FLAGS ' -Wall -Wextra -Wpedantic -Wswitch-enum -Wshadow -Wno-long-long'
-- CMAKE_CXX_FLAGS_DEBUG '-g'
-- Using Address Sanitizer
-- Compile sqlite3 from source in subdirectory
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- Found PythonInterp: /usr/bin/python (found version "2.7.5")
-- Could NOT find cppcheck
-- SQLITECPP_RUN_DOXYGEN OFF
-- Found GTest: /usr/local/lib64/libgtest.a
-- Link to GTest system library
-- Configuring done
-- Generating done
-- Build files have been written to: /root/opensource/SQLiteCpp-3.3.1/build
Scanning dependencies of target sqlite3
[ 4%] Building C object sqlite3/CMakeFiles/sqlite3.dir/sqlite3.c.o
[ 9%] Linking C shared library libsqlite3.so
[ 9%] Built target sqlite3
Scanning dependencies of target SQLiteCpp
[ 13%] Building CXX object CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o
In file included from /root/opensource/SQLiteCpp-3.3.1/src/Backup.cpp:12:
In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Backup.h:15:
In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Database.h:14:
In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Column.h:14:
/root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Statement.h:82:16: error: exception specification of explicitly defaulted move assignment operator does not match the calculated one
Statement& operator=(Statement&& aStatement) noexcept = default;
^
1 error generated.
gmake[2]: [CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o] Error 1
gmake[1]: [CMakeFiles/SQLiteCpp.dir/all] Error 2
gmake: *** [all] Error 2
I encountered the following error in CentOS 7 with Clang version 7.
./build.sh -- The C compiler identification is Clang 7.0.1 -- The CXX compiler identification is Clang 7.0.1 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Using c++ standard c++11 -- CMake version: 3.6.2 -- Project version: 3.3.1 -- Using Stack Protection hardening -- CMAKE_CXX_COMPILER '/usr/bin/c++' 'Clang' '7.0.1' -- CMAKE_CXX_FLAGS ' -Wall -Wextra -Wpedantic -Wswitch-enum -Wshadow -Wno-long-long' -- CMAKE_CXX_FLAGS_DEBUG '-g' -- Using Address Sanitizer -- Compile sqlite3 from source in subdirectory -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - found -- Found Threads: TRUE -- Found PythonInterp: /usr/bin/python (found version "2.7.5") -- Could NOT find cppcheck -- SQLITECPP_RUN_DOXYGEN OFF -- Found GTest: /usr/local/lib64/libgtest.a -- Link to GTest system library -- Configuring done -- Generating done -- Build files have been written to: /root/opensource/SQLiteCpp-3.3.1/build Scanning dependencies of target sqlite3 [ 4%] Building C object sqlite3/CMakeFiles/sqlite3.dir/sqlite3.c.o [ 9%] Linking C shared library libsqlite3.so [ 9%] Built target sqlite3 Scanning dependencies of target SQLiteCpp [ 13%] Building CXX object CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o In file included from /root/opensource/SQLiteCpp-3.3.1/src/Backup.cpp:12: In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Backup.h:15: In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Database.h:14: In file included from /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Column.h:14: /root/opensource/SQLiteCpp-3.3.1/include/SQLiteCpp/Statement.h:82:16: error: exception specification of explicitly defaulted move assignment operator does not match the calculated one Statement& operator=(Statement&& aStatement) noexcept = default; ^ 1 error generated. gmake[2]: [CMakeFiles/SQLiteCpp.dir/src/Backup.cpp.o] Error 1 gmake[1]: [CMakeFiles/SQLiteCpp.dir/all] Error 2 gmake: *** [all] Error 2