0

这是我第一次在 Windows 上,我正在尝试使用 mingw32编译Mysql++ 库。我已经下载了 tarball 存档,然后运行了文档mingw32-make -f Makefile.mingw中指定的命令,但我得到了不同的未定义参考错误。同样的库在 Ubuntu 上运行良好,在构建过程中我没有遇到任何问题。

MySQL Connector C 6.1按要求安装了它,它的路径是C:\Program Files\MySQL\MySQL Connector C 6.1\.

mysql++-3.2.5\mysql++-3.2.5>mingw32-make.exe -f Makefile.mingw
g++ -shared -fPIC -o mysqlpp.dll mysqlpp_beemutex.o mysqlpp_cmdline.o mysqlpp_connection.o mysqlpp_cpool.o mysqlpp_datetime.o mysqlpp_dbdriver.o mysqlpp_field_names.o mysqlpp_field_types.o mysqlpp_manip.o mysqlpp_myset.o mysqlpp_mysql++.o mysqlpp_mystring.o mysqlpp_null.o mysqlpp_options.o mysqlpp_qparms.o mysqlpp_query.o mysqlpp_result.o mysqlpp_row.o mysqlpp_scopedconnection.o mysqlpp_sql_buffer.o mysqlpp_sqlstream.o mysqlpp_ssqls2.o mysqlpp_stadapter.o mysqlpp_tcp_connection.o mysqlpp_transaction.o mysqlpp_type_info.o mysqlpp_uds_connection.o mysqlpp_utility.o mysqlpp_vallist.o mysqlpp_wnp_connection.o  -Wl,--out-implib=libmysqlpp.a -g -mthreads -Wl,--enable-stdcall-fixup -L"C:\Program Files\MySQL\MySQL Connector C 6.1\lib"   -lwsock32 -lmysql
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZNK7mysqlpp8DBDriver14client_versionB5cxx11Ev':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:97: undefined reference to `mysql_get_client_info@0'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver5errorEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:185: undefined reference to `mysql_error@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver6errnumEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:192: undefined reference to `mysql_errno@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver8ipc_infoB5cxx11Ev':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:366: undefined reference to `mysql_get_host_info@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver4killEm':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:395: undefined reference to `mysql_kill@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver4pingEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:466: undefined reference to `mysql_ping@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver16protocol_versionEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:476: undefined reference to `mysql_get_proto_info@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver9select_dbEPKc':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:512: undefined reference to `mysql_select_db@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver14server_versionB5cxx11Ev':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:521: undefined reference to `mysql_get_server_info@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver13server_statusB5cxx11Ev':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:597: undefined reference to `mysql_stat@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver10thread_endEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:633: undefined reference to `mysql_thread_end@0'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver9thread_idEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:644: undefined reference to `mysql_thread_id@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_connection.o: in function `ZN7mysqlpp8DBDriver12thread_startEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:668: undefined reference to `mysql_thread_init@0'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver7connectEPKcS2_jS2_S2_S2_':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:76: undefined reference to `mysql_real_connect@32'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver7connectERK8st_mysql':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:86: undefined reference to `mysql_real_connect@32'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver15connect_prepareEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:102: undefined reference to `mysql_init@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver10disconnectEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:137: undefined reference to `mysql_close@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver10enable_sslEPKcS2_S2_S2_S2_':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:151: undefined reference to `mysql_ssl_set@24'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver10query_infoB5cxx11Ev':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:237: undefined reference to `mysql_info@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver8shutdownEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:343: undefined reference to `mysql_shutdown@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver12thread_awareEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.cpp:357: undefined reference to `mysql_thread_safe@0'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver13escape_stringEPcPKcj':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:214: undefined reference to `mysql_real_escape_string@16'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_dbdriver.o: in function `ZN7mysqlpp8DBDriver21escape_string_no_connEPcPKcj':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:269: undefined reference to `mysql_escape_string@12'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_options.o: in function `ZN7mysqlpp8DBDriver10set_optionE12mysql_optionPKv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:540: undefined reference to `mysql_options@12'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_options.o: in function `ZN7mysqlpp8DBDriver10set_optionE21enum_mysql_set_option':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:551: undefined reference to `mysql_set_server_option@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZNK7mysqlpp26RefCountedPointerDestroyerI12st_mysql_resEclEPS1_':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/result.h:287: undefined reference to `mysql_free_result@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver13affected_rowsEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:88: undefined reference to `mysql_affected_rows@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver7executeEPKcj':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:287: undefined reference to `mysql_real_query@12'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver9insert_idEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:382: undefined reference to `mysql_insert_id@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver12more_resultsEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:406: undefined reference to `mysql_more_results@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver11next_resultEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:425: undefined reference to `mysql_next_result@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver12result_emptyEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:505: undefined reference to `mysql_field_count@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver12store_resultEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:610: undefined reference to `mysql_store_result@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_query.o: in function `ZN7mysqlpp8DBDriver10use_resultEv':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:684: undefined reference to `mysql_use_result@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver9fetch_rowEP12st_mysql_res':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:301: undefined reference to `mysql_fetch_row@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver13fetch_lengthsEP12st_mysql_res':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:311: undefined reference to `mysql_fetch_lengths@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver11fetch_fieldEP12st_mysql_resj':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:330: undefined reference to `mysql_fetch_field@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:331: undefined reference to `mysql_fetch_field_direct@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver10field_seekEP12st_mysql_resj':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:341: undefined reference to `mysql_field_seek@8'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver11free_resultEP12st_mysql_res':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:350: undefined reference to `mysql_free_result@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver10num_fieldsEP12st_mysql_res':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:441: undefined reference to `mysql_num_fields@4'
    c:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: mysqlpp_result.o: in function `ZNK7mysqlpp8DBDriver8num_rowsEP12st_mysql_res':
    C:\Users\39328\Downloads\mysql++-3.2.5\mysql++-3.2.5/lib/dbdriver.h:450: undefined reference to `mysql_num_rows@4'
    collect2.exe: error: ld returned 1 exit status
    Makefile.mingw:361: recipe for target 'mysqlpp.dll' failed
    mingw32-make.exe: *** [mysqlpp.dll] Error 1

我该如何解决这个错误?

4

0 回答 0