Opened 6 years ago

Closed 5 years ago

Last modified 5 years ago

#8 closed defect (worksforme)

Missing or spurious ODBC dependency

Reported by: Vladimír Štill Owned by: mornfall
Priority: major Milestone: 5.0
Component: bench Keywords:
Cc: kdudka@…

Description

As reported by Kamil:

ODBC is missing in the build dependencies. On Fedora 27 it is necessary to install unixODBC-devel, otherwise, the following error is produces:

[1898/5410] Building CXX object external/nanodbc/CMakeFiles/nanodbc.dir/nanodbc.cpp.o
FAILED: external/nanodbc/CMakeFiles/nanodbc.dir/nanodbc.cpp.o 
/home/kdudka/divine/_build.toolchain/clang//bin/clang++  -DBRICKS_HAVE_DIRENT_D_TYPE -DBRICKS_HAVE_LLVM -DNANODBC_USE_CPP11 -DOPT_SIM=1 -DOPT_SQL=1 -DOPT_STP=1 -DOPT_TBBMALLOC=1 -DOPT_Z3=0 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I../llvm/include -Illvm/include -I../clang/include -Iclang/include -I../bricks -I/usr/include/valgrind -isystem /home/kdudka/divine/dios/libcxxabi/include -isystem /home/kdudka/divine/dios/libcxx/include -isystem /home/kdudka/divine/dios/libunwind/include -stdlib=libc++ -nostdinc++ -Wno-unused-command-line-argument -std=c++1z -O3 -g -DNDEBUG -DNVALGRIND -fPIC   -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG -DSIZEOF_LONG_INT=8 -I/usr/include -fcolor-diagnostics -MD -MT external/nanodbc/CMakeFiles/nanodbc.dir/nanodbc.cpp.o -MF external/nanodbc/CMakeFiles/nanodbc.dir/nanodbc.cpp.o.d -o external/nanodbc/CMakeFiles/nanodbc.dir/nanodbc.cpp.o -c ../external/nanodbc/nanodbc.cpp
../external/nanodbc/nanodbc.cpp:56:10: fatal error: 'sql.h' file not found
#include <sql.h>
         ^~~~~~~
1 error generated.

I don't think ODBC is needed for anything but divbench. It seems to me that either the detection of ODBC in CMake is faulty, or we try to build ODBC regardless of this detection.

Change History (2)

comment:1 Changed 5 years ago by mornfall

Resolution: worksforme
Status: newclosed

Probably a cmake glitch, or a case of stale cache (odbc headers removed after configuring? or maybe odbc-config installed but not the headers?). We do not build nanodbc unless OPT_SQL is set, and we default OPT_SQL to ${ODBC_FOUND}. Please provide steps to reproduce if this is still a problem.

comment:2 Changed 5 years ago by mornfall

Milestone: future5.0

Milestone renamed

Note: See TracTickets for help on using tickets.