cannot generate the lib
(1.1) Originally by tom (Aomandeyi) with edits by Warren Young (tangent) on 2020-09-25 14:30:18 from 1.0 [link] [source]
i used code::blocks in windows with MinGW, and i have already found words like "MYSQL_WIN_DIR" in "the file called "mysql++.bkl",and change it with the path of "Mysql Connector.c6.1" in my computer, after i use bakefile which is a tool to help compile by input orders (such as "bakefile_gen -f mingw" and "mingw32-make -f Makefile.mingw" ,"install.hta"in cmd), i only get one file named "include", i cann't find the file "lib", so the libmysqlpp.a and mysqlpp.dll don't exist!!! Where is the lib of mysql++? what can i do? The informations in cmd as follow:
C:\1MyFiles\TEMP\mysql++-3.2.5>mingw32-make -f Makefile.mingw
g++ -c -o mysqlpp_beemutex.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_beemutex.o -MFmysqlpp_beemutex.o.d -MD -MP lib/beemutex.cpp
g++ -c -o mysqlpp_cmdline.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_cmdline.o -MFmysqlpp_cmdline.o.d -MD -MP lib/cmdline.cpp
g++ -c -o mysqlpp_connection.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_connection.o -MFmysqlpp_connection.o.d -MD -MP lib/connection.cpp
g++ -c -o mysqlpp_cpool.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_cpool.o -MFmysqlpp_cpool.o.d -MD -MP lib/cpool.cpp
g++ -c -o mysqlpp_datetime.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_datetime.o -MFmysqlpp_datetime.o.d -MD -MP lib/datetime.cpp
g++ -c -o mysqlpp_dbdriver.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_dbdriver.o -MFmysqlpp_dbdriver.o.d -MD -MP lib/dbdriver.cpp
g++ -c -o mysqlpp_field_names.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_field_names.o -MFmysqlpp_field_names.o.d -MD -MP lib/field_names.cpp
g++ -c -o mysqlpp_field_types.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_field_types.o -MFmysqlpp_field_types.o.d -MD -MP lib/field_types.cpp
g++ -c -o mysqlpp_manip.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_manip.o -MFmysqlpp_manip.o.d -MD -MP lib/manip.cpp
g++ -c -o mysqlpp_myset.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_myset.o -MFmysqlpp_myset.o.d -MD -MP lib/myset.cpp
g++ -c -o mysqlpp_mysql++.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_mysql++.o -MFmysqlpp_mysql++.o.d -MD -MP lib/mysql++.cpp
g++ -c -o mysqlpp_mystring.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_mystring.o -MFmysqlpp_mystring.o.d -MD -MP lib/mystring.cpp
g++ -c -o mysqlpp_null.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_null.o -MFmysqlpp_null.o.d -MD -MP lib/null.cpp
g++ -c -o mysqlpp_options.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_options.o -MFmysqlpp_options.o.d -MD -MP lib/options.cpp
g++ -c -o mysqlpp_qparms.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_qparms.o -MFmysqlpp_qparms.o.d -MD -MP lib/qparms.cpp
g++ -c -o mysqlpp_query.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_query.o -MFmysqlpp_query.o.d -MD -MP lib/query.cpp
g++ -c -o mysqlpp_result.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_result.o -MFmysqlpp_result.o.d -MD -MP lib/result.cpp
g++ -c -o mysqlpp_row.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_row.o -MFmysqlpp_row.o.d -MD -MP lib/row.cpp
g++ -c -o mysqlpp_scopedconnection.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_scopedconnection.o -MFmysqlpp_scopedconnection.o.d -MD -MP lib/scopedconnection.cpp
g++ -c -o mysqlpp_sql_buffer.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_sql_buffer.o -MFmysqlpp_sql_buffer.o.d -MD -MP lib/sql_buffer.cpp
g++ -c -o mysqlpp_sqlstream.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_sqlstream.o -MFmysqlpp_sqlstream.o.d -MD -MP lib/sqlstream.cpp
g++ -c -o mysqlpp_ssqls2.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_ssqls2.o -MFmysqlpp_ssqls2.o.d -MD -MP lib/ssqls2.cpp
g++ -c -o mysqlpp_stadapter.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_stadapter.o -MFmysqlpp_stadapter.o.d -MD -MP lib/stadapter.cpp
g++ -c -o mysqlpp_tcp_connection.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_tcp_connection.o -MFmysqlpp_tcp_connection.o.d -MD -MP lib/tcp_connection.cpp
g++ -c -o mysqlpp_transaction.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_transaction.o -MFmysqlpp_transaction.o.d -MD -MP lib/transaction.cpp
g++ -c -o mysqlpp_type_info.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_type_info.o -MFmysqlpp_type_info.o.d -MD -MP lib/type_info.cpp
g++ -c -o mysqlpp_uds_connection.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_uds_connection.o -MFmysqlpp_uds_connection.o.d -MD -MP lib/uds_connection.cpp
g++ -c -o mysqlpp_utility.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_utility.o -MFmysqlpp_utility.o.d -MD -MP lib/utility.cpp
g++ -c -o mysqlpp_vallist.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_vallist.o -MFmysqlpp_vallist.o.d -MD -MP lib/vallist.cpp
g++ -c -o mysqlpp_wnp_connection.o -g -O0 -mthreads -DUNICODE -D_UNICODE -DMYSQLPP_NO_DLL -DHAVE_MYSQL_SSL_SET -I"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -MTmysqlpp_wnp_connection.o -MFmysqlpp_wnp_connection.o.d -MD -MP lib/wnp_connection.cpp
g++ -shared -fPIC -o mysqlpp.dll @mysqlpp.dll.rsp -Wl,--out-implib=libmysqlpp.a -g -mthreads -Wl,--enable-stdcall-fixup -L"C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib" -lwsock32 -lmysql
C:/1MyFiles/Mycpp/CodeBlocks/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib/libmysql.dll when searching for -lmysql
C:/1MyFiles/Mycpp/CodeBlocks/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib/libmysql.dll when searching for -lmysql
C:/1MyFiles/Mycpp/CodeBlocks/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lmysql
collect2.exe: error: ld returned 1 exit status
mingw32-make: *** [Makefile.mingw:363: mysqlpp.dll] Error 1
(2.1) By Warren Young (tangent) on 2020-09-25 14:37:06 edited from 2.0 in reply to 1.1 [source]
This all comes down to understanding your tools; it is not a MySQL++ specific issue.
Although this is not the best place to learn how to use Code::Blocks or MinGW, and I'm no expert on either, the problem is explicitly stated in the output you quoted:
C:/1MyFiles/Mycpp/CodeBlocks/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:\Program Files (x86)\MySQL\MySQL Connector C 6.1\lib/libmysql.dll when searching for -lmysql
In other words, the MySQL C client library (a.k.a. Connector/C) is incompatible with your build options. It looks like you're trying to use a 32-bit cross-compiler on a system with 64-bit libraries installed. You can't mix 32-bit and 64-bit compiler outputs in a single program.
(3) By tom (Aomandeyi) on 2020-09-27 01:23:03 in reply to 2.1 [link] [source]
Thank you very much! The MySQL C client has 32-bit libraries,and I already found the problem as you said , i didn't realize that my systerm environment value sets 64-bit compile as default ,so when i use bakefile(tools for helping compile by using 32bit compile) ,it generate some configuration files which invoke systerm-environment-default-value-compile behind the scenes but i don't know. I'm grateful for your valuable time for this . Best wishes for you!