V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Bssn
V2EX  ›  Linux

Mac(M2 芯片)编译 Qt6 Mysql 驱动时的错误

  •  
  •   Bssn · 21 天前 · 1184 次点击

    已安装:

    • mysql-client (homebrew)
    • qt 6.8.2

    尝试安装官网给的命令去构建驱动:

    // 官网版本:
    mkdir build-sqldrivers
    cd build-sqldrivers
    qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DMySQL_ROOT="/usr/local/mysql"
    cmake --build .
    cmake --install .
    
    
    // 修改后:
    /Users/name/Qt/6.8.2/macos/bin/qt-cmake -G Ninja /Users/name/Qt/6.8.2/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=/Users/name/Qt/6.8.2/macos -DMySQL_ROOT="/opt/homebrew/opt/mysql-client"
    
    

    这样是能够成功的,但是执行 cmake --build . 时会报错:

    ld: symbol(s) not found for architecture x86_64
    c++: error: linker command failed with exit code 1 (use -v to see invocation)
    [14/16] Building CXX object sqlite/CMakeFiles/QSQLiteDriverPlugin.dir/qsql_sqlite.cpp.o
    [15/16] Building C object sqlite/CMakeFiles/QSQLiteDriverPlugin.dir/Users/bssn/Qt/6.8.2/Src/qtbase/src/3rdparty/sqlite/sqlite3.c.o
    ninja: build stopped: subcommand failed.
    
    

    研究了好一会儿,但仍不知道怎么解决,求大佬指点~

    6 条回复    2025-03-09 21:21:16 +08:00
    kk2syc
        1
    kk2syc  
       21 天前
    系统环境差异,你要检查下 makefile ,看看里面是不是写的 g++,改成 gcc 即可

    错误:g++ -o exec main.o add.o
    正确:gcc -o exec main.o add.o
    julyclyde
        2
    julyclyde  
       21 天前
    @kk2syc 这俩前端针对的语言都不一样吧,能互换?
    Bssn
        3
    Bssn  
    OP
       21 天前
    @kk2syc 老哥,build-sqldrivers 目录下没有 makefile 文件呢,只有 build.ninja ,里面也没有搜到 g++,不知道怎么办了😭 我是小白,老哥勿怪😭
    hwdq0012
        4
    hwdq0012  
       21 天前
    qt 在线安装器安装的库都是 x86_64 的,你的工具链,相关的链接都得用 x86_64 的才行,
    或者你自己编译一下 qt arm64 的
    Shatyuka
        5
    Shatyuka  
       21 天前
    架构不对
    Bssn
        6
    Bssn  
    OP
       21 天前
    @hwdq0012 编译了一下 arm64 版本的 qt ,果然成功了,感谢指点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5331 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 01:29 · PVG 09:29 · LAX 18:29 · JFK 21:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.