Discussion:
[odb-users] libodb-sqlite-2.2.0 compile problem
Uwe Kindler
2013-02-13 21:56:09 UTC
Permalink
Hi Boris,

I'm just compiling all ODB 2.2.0 libraries with MinGW GCC 4.7.2 and
stumbled over the following libodb-sqlite-2.2.0 error:

database.cxx:6:66: fatal error: odb/details/win32/windows.hxx: No such
file or directory
compilation terminated.
make[2]: *** [database.lo] Error 1

I checked the directory /local/include/odb - the target directory of
libodb make install command. The directory \local\include\odb\details is
missing the win32 folder but contains the posix folder. I manually
copied the win32 folder over to the install directory and was able to
successfully finish compilation of libodb-sqlite-2.2.0.

So it seems, make install command assumes we are on a posix (linux)
system instead of a Windows system.

But compilation of libodb now successfully works with MinGW GCC4.7.2 -
thank you for this quick fix - your support is awesome.

Kind regards,

Uwe Kindler
Boris Kolpackov
2013-02-14 05:13:47 UTC
Permalink
Hi Uwe,
Post by Uwe Kindler
I'm just compiling all ODB 2.2.0 libraries with MinGW GCC 4.7.2 and
database.cxx:6:66: fatal error: odb/details/win32/windows.hxx: No such
file or directory
Ah, I know what happens. Your GCC is configured to use POSIX threads
(new thing in MinGW-W64; necessary to support C++11 threads). ODB now
detects this and also uses POSIX threads instead of Win32. The side
effect of this is that the Win32 headers, particularly, windows.hxx,
are no longer installed. But libodb-sqlite (and also libodb-mssql)
need this header on Win32 regardless of the threading model.

I've fixed libodb build system to always install windows.hxx on
Windows. I've tested it on my side and it work fine. Could you
also give it a try and confirm that it is fixed? Then I will make
the bug-fix official.

http://www.codesynthesis.com/~boris/tmp/odb/libodb-2.2.1.zip
Post by Uwe Kindler
thank you for this quick fix - your support is awesome.
Thanks, I am glad things are (mostly) working for you ;-). And thanks
for the bug report, always appreciated!

Boris

Loading...