I did ld with --verbose, however there is still a problem that linux
mingw (gcc 10.2) is badly packaged!
g++ -m64 -o dist/Debug/x86_64-w64-mingw32-Linux/liblibodbc.dll
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/callablestatement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/connection.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/databasemetadata.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datahandler.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datastream.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datetime.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/driverinfo.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/drivermanager.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/errorhandler.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/preparedstatement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/resultset.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/resultsetmetadata.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/statement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/threads.o --verbose
-lodbc32 -Xlinker -Map -Xlinker /tmp/libodbc-mingw64.map -shared -fPIC
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/lto-wrapper
Target: x86_64-w64-mingw32
Configured with: /build/mingw-w64-gcc/src/gcc/configure --prefix=/usr
--libexecdir=/usr/lib --target=x86_64-w64-mingw32
--with-bugurl=https://bugs.archlinux.org/
--enable-languages=c,lto,c++,ada,objc,obj-c++,fortran --enable-shared
--enable-static --enable-threads=posix --enable-fully-dynamic-string
--enable-libstdcxx-time=yes --enable-libstdcxx-filesystem-ts=yes
--with-system-zlib --enable-cloog-backend=isl --enable-lto
--enable-libgomp --disable-multilib --enable-checking=release
--disable-sjlj-exceptions --with-dwarf2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.0 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/:/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/:/usr/lib/gcc/x86_64-w64-mingw32/:/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/:/usr/lib/gcc/x86_64-w64-mingw32/:/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/
LIBRARY_PATH=/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/:/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/lib/../lib/:/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/lib/
COLLECT_GCC_OPTIONS='-m64' '-o'
'dist/Debug/x86_64-w64-mingw32-Linux/liblibodbc.dll' '-v' '-shared'
'-fPIC' '-shared-libgcc' '-mtune=generic' '-march=x86-64'
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/collect2 -plugin
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/liblto_plugin.so
-plugin-opt=/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/lto-wrapper
-plugin-opt=-fresolution=/tmp/ccXtJqk0.res
-plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname
-plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt
-plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-ladvapi32
-plugin-opt=-pass-through=-lshell32 -plugin-opt=-pass-through=-luser32
-plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lmingw32
-plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc
-plugin-opt=-pass-through=-lmoldname -plugin-opt=-pass-through=-lmingwex
-plugin-opt=-pass-through=-lmsvcrt -m i386pep --shared -Bdynamic -e
DllMainCRTStartup --enable-auto-image-base -o
dist/Debug/x86_64-w64-mingw32-Linux/liblibodbc.dll
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/lib/../lib/dllcrt2.o
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/crtbegin.o
-L/usr/lib/gcc/x86_64-w64-mingw32/10.2.0
-L/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/lib/../lib
-L/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/lib
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/callablestatement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/connection.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/databasemetadata.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datahandler.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datastream.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datetime.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/driverinfo.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/drivermanager.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/errorhandler.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/preparedstatement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/resultset.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/resultsetmetadata.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/statement.o
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/threads.o -lodbc32
-Map /tmp/libodbc-mingw64.map -lstdc++ -lmingw32 -lgcc_s -lgcc
-lmoldname -lmingwex -lmsvcrt -lpthread -ladvapi32 -lshell32 -luser32
-lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/crtend.o
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld:
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datahandler.o: in
function `odbc::stringToStream(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)':
/asoft-src/ispp-64/linux/cross-compile/libodbc++-0.2.3/libodbc/../../../..//libodbc++-0.2.3/src/dtconv.h:162:
undefined reference to `std::__cxx11::basic_stringstream<char,
std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
/usr/lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld:
build/Debug/x86_64-w64-mingw32-Linux/_ext/7fd6286d/datahandler.o: in
function `odbc::bytesToStream(odbc::Bytes const&)':
/asoft-src/ispp-64/linux/cross-compile/libodbc++-0.2.3/libodbc/../../../..//libodbc++-0.2.3/src/dtconv.h:233:
undefined reference to `std::__cxx11::basic_stringstream<char,
std::char_traits<char>, std::allocator<char> >::basic_stringstream()'
collect2: error: ld returned 1 exit status
On 16.11.20. 15:18, Liu Hao wrote:
在 2020/11/16 17:52, gmail Vladimir Koković 写道:
I can't believe it but it's true that I can't do clean/build for libodbc++
because my linux mingw
(gcc 10.2) is badly packaged!
I checked against http://winlibs.com/ gcc 10.2 and it is evident that in my
linux mingw libstdc is
missing basic_stringstream()
What's worse, I don't know how to overcome this problem?
There doesn't seem to by anything wrong with the command line (other than the
`-Xlinker -Map` which
I am unfamiliar with). According to this undefined reference, I presume a wrong
libstdc++ was picked
by LD. You might want to add `-v` to the command line to find out what happened.
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public