Added QMysql plugin to Qt Creator project on MacOS Ventura 13.4
-
@SGaist I got:
mikolajnawrocki@MacBook-Pro-Mikoaj build-sqldrivers % /Users/mikolajnawrocki/Qt/6.5.0/macos/bin/qt-cmake -G Ninja /Users/mikolajnawrocki/Qt/6.5.0/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=/Users/mikolajnawrocki/Qt/6.5.0/macos -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.dylib" CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. CMake Error: CMAKE_ASM_COMPILER not set, after EnableLanguage -- Configuring incomplete, errors occurred!
Why did you add the Ninja stuff back ? I just wrote that you should use the full path to qt-cmake.
-
Why did you add the Ninja stuff back ? I just wrote that you should use the full path to qt-cmake.
@SGaist I am not sure I understand what you are talking about. But I input :
/Users/mikolajnawrocki/Qt/6.5.0/macos/bin/qt-cmake -G /Users/mikolajnawrocki/Qt/6.5.0/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=/Users/mikolajnawrocki/Qt/6.5.0/macos -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.dylib"
and I got:
CMake Error: Could not create named generator /Users/mikolajnawrocki/Qt/6.5.0/Src/qtbase/src/plugins/sqldrivers Generators * Unix Makefiles = Generates standard UNIX makefiles. Ninja = Generates build.ninja files. Ninja Multi-Config = Generates build-<Config>.ninja files. Watcom WMake = Generates Watcom WMake makefiles. Xcode = Generate Xcode project files. CodeBlocks - Ninja = Generates CodeBlocks project files. CodeBlocks - Unix Makefiles = Generates CodeBlocks project files. CodeLite - Ninja = Generates CodeLite project files. CodeLite - Unix Makefiles = Generates CodeLite project files. Eclipse CDT4 - Ninja = Generates Eclipse CDT 4.0 project files. Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files. Kate - Ninja = Generates Kate project files. Kate - Unix Makefiles = Generates Kate project files. Sublime Text 2 - Ninja = Generates Sublime Text 2 project files. Sublime Text 2 - Unix Makefiles = Generates Sublime Text 2 project files. CMake Warning: No source or binary directory provided. Both will be assumed to be the same as the current working directory, but note that this warning will become a fatal error in future CMake releases.
-
Why did you add the Ninja stuff back ? I just wrote that you should use the full path to qt-cmake.
@SGaist Ok I was need some time to unsderstand. I input :
/Users/mikolajnawrocki/Qt/6.5.0/macos/bin/qt-cmake /Users/mikolajnawrocki/Qt/6.5.0/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=/Users/mikolajnawrocki/Qt/6.5.0/macos -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.dylib"
And I got:
-- The CXX compiler identification is AppleClang 14.0.3.14030022 -- The C compiler identification is AppleClang 14.0.3.14030022 -- The ASM compiler identification is Clang with GNU-like command-line -- Found assembler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/clang++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/clang - skipped -- Detecting C compile features -- Detecting C compile features - done -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Performing Test HAVE_STDATOMIC -- Performing Test HAVE_STDATOMIC - Success -- Found WrapAtomic: TRUE -- Configuration summary shown below. It has also been written to /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers/config.summary -- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations. -- Configure summary: Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. yes OCI (Oracle) ........................... no ODBC ................................... no PostgreSQL ............................. no SQLite ................................. yes Using system provided SQLite ......... no -- Configuring done (3.8s) -- Generating done (0.0s) -- Build files have been written to: /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers
Then I input:
cmake --build .
and I got:
[ 9%] Automatic MOC for target QMYSQLDriverPlugin [ 9%] Built target QMYSQLDriverPlugin_autogen [ 18%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/QMYSQLDriverPlugin_autogen/mocs_compilation.cpp.o [ 27%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/main.cpp.o [ 36%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/qsql_mysql.cpp.o [ 45%] Linking CXX shared module ../plugins/sqldrivers/libqsqlmysql.dylib ld: warning: ignoring file /usr/local/mysql/lib/libmysqlclient.dylib, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 Undefined symbols for architecture x86_64: "_mysql_affected_rows", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_character_set_name", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) (.cold.1) in qsql_mysql.cpp.o "_mysql_close", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o QMYSQLDriver::close() in qsql_mysql.cpp.o "_mysql_data_seek", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o "_mysql_errno", referenced from: qMakeError(QString const&, QSqlError::ErrorType, QMYSQLDriverPrivate const*) in qsql_mysql.cpp.o QMYSQLResult::record() const in qsql_mysql.cpp.o "_mysql_error", referenced from: qMakeError(QString const&, QSqlError::ErrorType, QMYSQLDriverPrivate const*) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) (.cold.1) in qsql_mysql.cpp.o "_mysql_fetch_field", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o QMYSQLResult::record() const in qsql_mysql.cpp.o QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_fetch_field_direct", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_fetch_lengths", referenced from: QMYSQLResult::data(int) in qsql_mysql.cpp.o "_mysql_fetch_row", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o QMYSQLResult::fetchNext() in qsql_mysql.cpp.o "_mysql_field_count", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_field_seek", referenced from: QMYSQLResult::record() const in qsql_mysql.cpp.o "_mysql_free_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_init", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_insert_id", referenced from: QMYSQLResult::lastInsertId() const in qsql_mysql.cpp.o "_mysql_list_fields", referenced from: QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_next_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_num_fields", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o "_mysql_num_rows", referenced from: QMYSQLResult::fetchLast() in qsql_mysql.cpp.o QMYSQLResult::size() in qsql_mysql.cpp.o "_mysql_options", referenced from: setOptionString(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o setOptionInt(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o setOptionBool(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o "_mysql_query", referenced from: QMYSQLDriver::beginTransaction() in qsql_mysql.cpp.o QMYSQLDriver::commitTransaction() in qsql_mysql.cpp.o QMYSQLDriver::rollbackTransaction() in qsql_mysql.cpp.o "_mysql_real_connect", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_real_escape_string", referenced from: QMYSQLDriver::formatValue(QSqlField const&, bool) const in qsql_mysql.cpp.o "_mysql_real_query", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o "_mysql_select_db", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_server_end", referenced from: QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o "_mysql_server_init", referenced from: QMYSQLDriver::QMYSQLDriver(QObject*) in qsql_mysql.cpp.o QMYSQLDriver::QMYSQLDriver(MYSQL*, QObject*) in qsql_mysql.cpp.o "_mysql_set_character_set", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_affected_rows", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_attr_set", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_bind_param", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_bind_result", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_close", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_data_seek", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o "_mysql_stmt_errno", referenced from: qMakeStmtError(QString const&, QSqlError::ErrorType, MYSQL_STMT*) in qsql_mysql.cpp.o "_mysql_stmt_error", referenced from: qMakeStmtError(QString const&, QSqlError::ErrorType, MYSQL_STMT*) in qsql_mysql.cpp.o "_mysql_stmt_execute", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_fetch", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o QMYSQLResult::fetchNext() in qsql_mysql.cpp.o "_mysql_stmt_free_result", referenced from: QMYSQLResult::detachFromResultSet() in qsql_mysql.cpp.o "_mysql_stmt_init", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_insert_id", referenced from: QMYSQLResult::lastInsertId() const in qsql_mysql.cpp.o "_mysql_stmt_num_rows", referenced from: QMYSQLResult::fetchLast() in qsql_mysql.cpp.o QMYSQLResult::size() in qsql_mysql.cpp.o "_mysql_stmt_param_count", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLResult::exec() in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_prepare", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_reset", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_result_metadata", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o "_mysql_stmt_store_result", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_store_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_thread_end", referenced from: QMYSQLDriver::close() in qsql_mysql.cpp.o "_mysql_thread_init", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [plugins/sqldrivers/libqsqlmysql.dylib] Error 1 make[1]: *** [mysql/CMakeFiles/QMYSQLDriverPlugin.dir/all] Error 2 make: *** [all] Error 2
What now?
-
@SGaist Ok I was need some time to unsderstand. I input :
/Users/mikolajnawrocki/Qt/6.5.0/macos/bin/qt-cmake /Users/mikolajnawrocki/Qt/6.5.0/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=/Users/mikolajnawrocki/Qt/6.5.0/macos -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.dylib"
And I got:
-- The CXX compiler identification is AppleClang 14.0.3.14030022 -- The C compiler identification is AppleClang 14.0.3.14030022 -- The ASM compiler identification is Clang with GNU-like command-line -- Found assembler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/clang++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/clang - skipped -- Detecting C compile features -- Detecting C compile features - done -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Performing Test HAVE_STDATOMIC -- Performing Test HAVE_STDATOMIC - Success -- Found WrapAtomic: TRUE -- Configuration summary shown below. It has also been written to /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers/config.summary -- Configure with --log-level=STATUS or higher to increase CMake's message verbosity. The log level does not persist across reconfigurations. -- Configure summary: Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. yes OCI (Oracle) ........................... no ODBC ................................... no PostgreSQL ............................. no SQLite ................................. yes Using system provided SQLite ......... no -- Configuring done (3.8s) -- Generating done (0.0s) -- Build files have been written to: /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers
Then I input:
cmake --build .
and I got:
[ 9%] Automatic MOC for target QMYSQLDriverPlugin [ 9%] Built target QMYSQLDriverPlugin_autogen [ 18%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/QMYSQLDriverPlugin_autogen/mocs_compilation.cpp.o [ 27%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/main.cpp.o [ 36%] Building CXX object mysql/CMakeFiles/QMYSQLDriverPlugin.dir/qsql_mysql.cpp.o [ 45%] Linking CXX shared module ../plugins/sqldrivers/libqsqlmysql.dylib ld: warning: ignoring file /usr/local/mysql/lib/libmysqlclient.dylib, building for macOS-x86_64 but attempting to link with file built for macOS-arm64 Undefined symbols for architecture x86_64: "_mysql_affected_rows", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_character_set_name", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) (.cold.1) in qsql_mysql.cpp.o "_mysql_close", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o QMYSQLDriver::close() in qsql_mysql.cpp.o "_mysql_data_seek", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o "_mysql_errno", referenced from: qMakeError(QString const&, QSqlError::ErrorType, QMYSQLDriverPrivate const*) in qsql_mysql.cpp.o QMYSQLResult::record() const in qsql_mysql.cpp.o "_mysql_error", referenced from: qMakeError(QString const&, QSqlError::ErrorType, QMYSQLDriverPrivate const*) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) (.cold.1) in qsql_mysql.cpp.o "_mysql_fetch_field", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o QMYSQLResult::record() const in qsql_mysql.cpp.o QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_fetch_field_direct", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_fetch_lengths", referenced from: QMYSQLResult::data(int) in qsql_mysql.cpp.o "_mysql_fetch_row", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o QMYSQLResult::fetchNext() in qsql_mysql.cpp.o "_mysql_field_count", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_field_seek", referenced from: QMYSQLResult::record() const in qsql_mysql.cpp.o "_mysql_free_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_init", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_insert_id", referenced from: QMYSQLResult::lastInsertId() const in qsql_mysql.cpp.o "_mysql_list_fields", referenced from: QMYSQLDriver::record(QString const&) const in qsql_mysql.cpp.o "_mysql_next_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_num_fields", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o "_mysql_num_rows", referenced from: QMYSQLResult::fetchLast() in qsql_mysql.cpp.o QMYSQLResult::size() in qsql_mysql.cpp.o "_mysql_options", referenced from: setOptionString(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o setOptionInt(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o setOptionBool(MYSQL*, mysql_option, QStringView) in qsql_mysql.cpp.o "_mysql_query", referenced from: QMYSQLDriver::beginTransaction() in qsql_mysql.cpp.o QMYSQLDriver::commitTransaction() in qsql_mysql.cpp.o QMYSQLDriver::rollbackTransaction() in qsql_mysql.cpp.o "_mysql_real_connect", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_real_escape_string", referenced from: QMYSQLDriver::formatValue(QSqlField const&, bool) const in qsql_mysql.cpp.o "_mysql_real_query", referenced from: QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o "_mysql_select_db", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_server_end", referenced from: QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o QMYSQLDriver::~QMYSQLDriver() in qsql_mysql.cpp.o "_mysql_server_init", referenced from: QMYSQLDriver::QMYSQLDriver(QObject*) in qsql_mysql.cpp.o QMYSQLDriver::QMYSQLDriver(MYSQL*, QObject*) in qsql_mysql.cpp.o "_mysql_set_character_set", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_affected_rows", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_attr_set", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_bind_param", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_bind_result", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_close", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_data_seek", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o "_mysql_stmt_errno", referenced from: qMakeStmtError(QString const&, QSqlError::ErrorType, MYSQL_STMT*) in qsql_mysql.cpp.o "_mysql_stmt_error", referenced from: qMakeStmtError(QString const&, QSqlError::ErrorType, MYSQL_STMT*) in qsql_mysql.cpp.o "_mysql_stmt_execute", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_fetch", referenced from: QMYSQLResult::fetch(int) in qsql_mysql.cpp.o QMYSQLResult::fetchNext() in qsql_mysql.cpp.o "_mysql_stmt_free_result", referenced from: QMYSQLResult::detachFromResultSet() in qsql_mysql.cpp.o "_mysql_stmt_init", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_insert_id", referenced from: QMYSQLResult::lastInsertId() const in qsql_mysql.cpp.o "_mysql_stmt_num_rows", referenced from: QMYSQLResult::fetchLast() in qsql_mysql.cpp.o QMYSQLResult::size() in qsql_mysql.cpp.o "_mysql_stmt_param_count", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLResult::exec() in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_prepare", referenced from: QMYSQLResult::prepare(QString const&) in qsql_mysql.cpp.o QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o "_mysql_stmt_reset", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_stmt_result_metadata", referenced from: QMYSQLResultPrivate::bindInValues() in qsql_mysql.cpp.o "_mysql_stmt_store_result", referenced from: QMYSQLResult::exec() in qsql_mysql.cpp.o "_mysql_store_result", referenced from: QMYSQLResult::cleanup() in qsql_mysql.cpp.o QMYSQLResult::reset(QString const&) in qsql_mysql.cpp.o QMYSQLResult::nextResult() in qsql_mysql.cpp.o "_mysql_thread_end", referenced from: QMYSQLDriver::close() in qsql_mysql.cpp.o "_mysql_thread_init", referenced from: QMYSQLDriver::open(QString const&, QString const&, QString const&, QString const&, int, QString const&) in qsql_mysql.cpp.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: *** [plugins/sqldrivers/libqsqlmysql.dylib] Error 1 make[1]: *** [mysql/CMakeFiles/QMYSQLDriverPlugin.dir/all] Error 2 make: *** [all] Error 2
What now?
Looks like you installed an arm only version of the MySQL library while working with an x86_64 build of Qt.
What is your machine ?
-
Looks like you installed an arm only version of the MySQL library while working with an x86_64 build of Qt.
What is your machine ?
@SGaist Information below:
I supposed I installed Qt arm64 version... So should I Install MySQL x86_64?
-
Looks like you installed an arm only version of the MySQL library while working with an x86_64 build of Qt.
What is your machine ?
@SGaist Ok, I uninstall MySQL for amr64 and install x86. Run in terminal what I need and I got no error. But when I open project in Qt Creator I got this:
-
@SGaist Ok, I uninstall MySQL for amr64 and install x86. Run in terminal what I need and I got no error. But when I open project in Qt Creator I got this:
Unless I am mistaken, your Qt build is a universal build. I.e. it contains both the x86_64 and arm64 symbols. Hence you need to also use a universal MySQL library to link to. If you only have separated libraries for each architecture, you can use lipo to combine them and the use that one.
-
Unless I am mistaken, your Qt build is a universal build. I.e. it contains both the x86_64 and arm64 symbols. Hence you need to also use a universal MySQL library to link to. If you only have separated libraries for each architecture, you can use lipo to combine them and the use that one.
@SGaist Ok. I will try and I let you know.
-
Unless I am mistaken, your Qt build is a universal build. I.e. it contains both the x86_64 and arm64 symbols. Hence you need to also use a universal MySQL library to link to. If you only have separated libraries for each architecture, you can use lipo to combine them and the use that one.
This post is deleted! -
Unless I am mistaken, your Qt build is a universal build. I.e. it contains both the x86_64 and arm64 symbols. Hence you need to also use a universal MySQL library to link to. If you only have separated libraries for each architecture, you can use lipo to combine them and the use that one.
@SGaist I find command line for lipo. I copied x86 and arm folders on my desktop and input this in terminal:
lipo /Users/mikolajnawrocki/Desktop/mysql-8.0.33-macos13-x86_64/lib/libmysqlclient.dylib /Users/mikolajnawrocki/Desktop/mysql-8.0.33-macos13-arm64/lib/libmysqlclient.dylib -output /Users/mikolajnawrocki/Desktop/universal/libmysqlclient.dylib -create
In the folder appeared much bigger libmysqlclient.dylib. So I guess fusion was completed.
Then I copied new file to /usr/local/mysql/lib/libmysqlclient.dylib" and paste it. Then I run Qt Creator. The last errors disappeared. But I still got error with mysql plugin.
Below is my folder structure of build-sqldrivers
-
@SGaist I find command line for lipo. I copied x86 and arm folders on my desktop and input this in terminal:
lipo /Users/mikolajnawrocki/Desktop/mysql-8.0.33-macos13-x86_64/lib/libmysqlclient.dylib /Users/mikolajnawrocki/Desktop/mysql-8.0.33-macos13-arm64/lib/libmysqlclient.dylib -output /Users/mikolajnawrocki/Desktop/universal/libmysqlclient.dylib -create
In the folder appeared much bigger libmysqlclient.dylib. So I guess fusion was completed.
Then I copied new file to /usr/local/mysql/lib/libmysqlclient.dylib" and paste it. Then I run Qt Creator. The last errors disappeared. But I still got error with mysql plugin.
Below is my folder structure of build-sqldrivers
If you copy the file on the command line, it will, by default, copy the content of the pointed file and thus you will have the library you want.
-
If you copy the file on the command line, it will, by default, copy the content of the pointed file and thus you will have the library you want.
@SGaist So what I should doing now? The universal libqmysqlclient.dylib is in the correct place. I got no errors in Terminal. But I got one in Qt Creator.
-
@SGaist So what I should doing now? The universal libqmysqlclient.dylib is in the correct place. I got no errors in Terminal. But I got one in Qt Creator.
Which error are you getting now ?
-
@SGaist Error below
QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QPSQL
-
@SGaist Error below
QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QPSQL
Did you ensure that the plugin was put in the plugins folder ? Did you build it for both debug and release ? Did you copy both variants to the appropriate subfolder ?
-
Did you ensure that the plugin was put in the plugins folder ? Did you build it for both debug and release ? Did you copy both variants to the appropriate subfolder ?
@SGaist I think I did.
Copied files from
/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers/plugins/sqldrivers
to
/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers
Builded debug and release
-
@SGaist I think I did.
Copied files from
/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/build-sqldrivers/plugins/sqldrivers
to
/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers
Builded debug and release
As already requested, stop working in the installation tree, create the build dir completely outside of it.
Start your application with the
QT_DEBUG_PLUGINS
environment variable set to 1 to see what is happening with the plugins. -
As already requested, stop working in the installation tree, create the build dir completely outside of it.
Start your application with the
QT_DEBUG_PLUGINS
environment variable set to 1 to see what is happening with the plugins.@SGaist Ok sorry. I delete build-sqldrivers from Qt directory and build one more time on my desktop. I input QT_DEBUG_PLUGINS in my code and I got this:
qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqoffscreen.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqoffscreen.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "offscreen" ] }, "archlevel": 0, "className": "QOffscreenIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("offscreen") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqminimal.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqminimal.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "minimal" ] }, "archlevel": 0, "className": "QMinimalIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("minimal") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "cocoa" ] }, "archlevel": 0, "className": "QCocoaIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("cocoa") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/platforms" ... qt.core.library: "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib" loaded library qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platformthemes" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/platformthemes" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib, metadata= { "IID": "org.qt-project.Qt.QStyleFactoryInterface", "MetaData": { "Keys": [ "macOS" ] }, "archlevel": 0, "className": "QMacStylePlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("macos") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/styles" ... qt.core.library: "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib" loaded library qt.qpa.fonts: Populating font family aliases took 50 ms. Replace uses of missing font family "Roboto" with one that exists to avoid this cost. qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/networkaccess" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/networkaccess" ... qt.core.library: "resolv" loaded library qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlite.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlite.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QSQLITE" ] }, "archlevel": 0, "className": "QSQLiteDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QSQLITE") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib" qt.core.plugin.loader: Failed to find metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib: '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib' is not a valid Mach-O binary (wrong architecture) qt.core.plugin.factoryloader: "Failed to extract plugin meta data from '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib': '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib' is not a valid Mach-O binary (wrong architecture)" not a plugin qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlodbc.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlodbc.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QODBC" ] }, "archlevel": 0, "className": "QODBCDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QODBC") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlpsql.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlpsql.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QPSQL" ] }, "archlevel": 0, "className": "QPSQLDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QPSQL") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/sqldrivers" ... QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QPSQL qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/accessible" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/accessible" ...
-
@SGaist Ok sorry. I delete build-sqldrivers from Qt directory and build one more time on my desktop. I input QT_DEBUG_PLUGINS in my code and I got this:
qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqoffscreen.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqoffscreen.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "offscreen" ] }, "archlevel": 0, "className": "QOffscreenIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("offscreen") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqminimal.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqminimal.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "minimal" ] }, "archlevel": 0, "className": "QMinimalIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("minimal") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib, metadata= { "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3", "MetaData": { "Keys": [ "cocoa" ] }, "archlevel": 0, "className": "QCocoaIntegrationPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("cocoa") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/platforms" ... qt.core.library: "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platforms/libqcocoa.dylib" loaded library qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/platformthemes" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/platformthemes" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib, metadata= { "IID": "org.qt-project.Qt.QStyleFactoryInterface", "MetaData": { "Keys": [ "macOS" ] }, "archlevel": 0, "className": "QMacStylePlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("macos") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/styles" ... qt.core.library: "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/styles/libqmacstyle.dylib" loaded library qt.qpa.fonts: Populating font family aliases took 50 ms. Replace uses of missing font family "Roboto" with one that exists to avoid this cost. qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/networkaccess" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/networkaccess" ... qt.core.library: "resolv" loaded library qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers" ... qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlite.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlite.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QSQLITE" ] }, "archlevel": 0, "className": "QSQLiteDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QSQLITE") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib" qt.core.plugin.loader: Failed to find metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib: '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib' is not a valid Mach-O binary (wrong architecture) qt.core.plugin.factoryloader: "Failed to extract plugin meta data from '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib': '/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlmysql.dylib' is not a valid Mach-O binary (wrong architecture)" not a plugin qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlodbc.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlodbc.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QODBC" ] }, "archlevel": 0, "className": "QODBCDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QODBC") qt.core.plugin.factoryloader: looking at "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlpsql.dylib" qt.core.plugin.loader: Found metadata in lib /Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/sqldrivers/libqsqlpsql.dylib, metadata= { "IID": "org.qt-project.Qt.QSqlDriverFactoryInterface", "MetaData": { "Keys": [ "QPSQL" ] }, "archlevel": 0, "className": "QPSQLDriverPlugin", "debug": false, "version": 394496 } qt.core.plugin.factoryloader: Got keys from plugin meta data QList("QPSQL") qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/sqldrivers" ... QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QODBC QPSQL qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Qt/6.5.0/macos/plugins/accessible" ... qt.core.plugin.factoryloader: checking directory path "/Users/mikolajnawrocki/Documents/GitHub/build-ATLAS-Qt_6_5_0_for_macOS-Release/accessible" ...
@BushyAxis793 check the file type and architecture of the plugin you created. There's something wrong with it.
-
@BushyAxis793 check the file type and architecture of the plugin you created. There's something wrong with it.
@SGaist OK. I decided to delete and build plugin one more time and I still got no errors but I noticed few warnings:
ld: warning: dylib (/usr/local/mysql/lib/libmysqlclient.dylib) was built for newer macOS version (12.0) than being linked (11.0) ld: warning: linking against a dylib which is not safe for use in application extensions: /usr/local/mysql/lib/libmysqlclient.dylib
The file type of my libmysqlclient.dylib seems be ok and the architecture is universal (x86 + amr64) via lipo.