码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • linux 使用 navicat 报错的各种问题


    我是凝思系统,使用的一些系统库可能比较旧吧,容易报错,记录一下解决过程

    (尽量不要手动编译库,能rpm之类的安装,就走rpm)

    1、报错 1

    /tmp/.mount_DOKybL/AppRun: symbol lookup error: /tmp/.mount_DOKybL/usr/lib/libgio-2.0.so.0: undefined symbol: g_option_group_unref

    查阅资料是 glib 版本的问题

    [Solved]navicat report error after update system / Applications & Desktop Environments / Arch Linux Forums

    所以编译新版 glib,我用的是 glib 的 2.68.4 分支,旧的版本有些符号有问题

    https://github.com/GNOME/glib/tree/2.68.4

    编译方法

    参照

     1_04_GLib库入门与实践_GLib库的编译_field1003的博客-CSDN博客_libglib

    glib 的依赖库可以参照上面链接,我是缺了 libffi-dev

    meson 和 ninja 命令是 pip3 安装出来的,如 pip3 install meson ninja

    安装完 meson 和 ninja 后,可以把命令软链接到 /usr/bin/ 下 ,方便使用

    运行下面命令进行编译安装 glib 库 (早期 glibc 版本貌似可以直接 make 方式编译,后来才改成 meson 和 ninja 编译的)

    1. meson build
    2. # meson build --prefix=/usr
    3. # 可以指定安装目录
    4. ninja -C build
    5. ninja -C build install

    编译完了库默认安装到

    /usr/local/lib/x86_64-linux-gnu/
    

    临时使用上面这个库,使用

    export LD_LIBRARY_PATH=/usr/local/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH

    如果要永久生效,需要写入 .bash_profile 文件,或者直接安装到系统库里 (基础库直接安装系统库可能有风险)

    2、报错 2

    /tmp/.mount_CjKps5/AppRun: symbol lookup error: /tmp/.mount_CjKps5/usr/lib/libQt5XcbQpa.so.5: undefined symbol: FT_Get_Font_Format

    查阅资料是 freestyle 版本问题,旧的版本有些符号有问题

    linux - Qt startup error: symbol lookup error: libQt5XcbQpa.so.5: undefined symbol: FT_Get_Font_Format - Super User

    有人分析了 libfreetype 的符号,确定是 libfreetype 的问题

    1. #readelf -s /usr/local/freetype/lib/libfreetype.so | grep -i font_format
    2. 95: 000000000001a640 43 FUNC GLOBAL DEFAULT 11 FT_Get_X11_Font_Format
    3. 265: 000000000001a610 43 FUNC GLOBAL DEFAULT 11 FT_Get_Font_Format

    所以编译新版 freestyle, 我用的是 freestyle 的 2.6.5 分支, freestyle 最新版本好像要下载子模块

    https://github.com/freetype/freetype/tree/2.6.5

    编译命令

    1. ./autogen.sh
    2. ./configure --prefix=/usr/local/freetype
    3. make
    4. make install

    编译完了库默认安装到

    /usr/local/freetype/lib

    临时使用上面这个库,使用

    export LD_LIBRARY_PATH=/usr/local/freetype/lib:$LD_LIBRARY_PATH

    如果要永久生效,需要写入 .bash_profile 文件,或者直接安装到系统库里 (基础库直接安装系统库可能有风险)

    题外话

    从前面链接

    [Solved]navicat report error after update system / Applications & Desktop Environments / Arch Linux Forums

    学到,可以从 AppImage 文件提取里面的文件

    1. mkdir src
    2. mount -o loop navicat15-premium-cs.AppImage src
    3. cp -r src squashfs-root
    4. umount src
    5. rmdir src

    然后还可以把提取出来的文件再镜像打包

    appimagetool squashfs-root navicat15-premium-cs.AppImage

    也许可以直接把编译好的库文件扔到镜像包里,不过我没实验

  • 相关阅读:
    含文档+PPT+源码等]精品基于Java的社区团购系统SSM[包运行成功]计算机毕业设计Java毕设
    Django之ORM操作初了解
    python+django+vue高校奖学金评定管理系统
    Pytorch CIFAR10图像分类 工具函数utils更新v2.0篇
    Veeam Backup Enterprise Manager身份验证绕过漏洞(CVE-2024-29849)
    华为机试真题 C++ 实现【日志首次上报最多积分】【2022.11 Q4 新题】
    一、安装GoLang环境和开发工具
    c++桥接模式,中介者模式应用实现状态跳转
    StoryDALL-E复现(基于预训练文本到图像Transformer的故事续编)
    PCA降维代码实现
  • 原文地址:https://blog.csdn.net/qq_38781075/article/details/128209408
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号