导航

    全志在线开发者论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 在线文档
    • 社区主页

    t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库

    MR Series
    5
    12
    4557
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • J
      jr_online LV 7 最后由 编辑

      交叉编译paha.mqtt.c库后,在lvgl_test项目中使用mqtt通信,编译成固件后,烧录到板子上运行,报错找不到动态库,有大佬指点一下吗?修改哪里的配置才能把动态库也加入到目标板的系统上。
      6d75942c-c6fb-4e8a-90c8-b30254bebf59-image.png

      1 条回复 最后回复 回复 引用 分享 0
      • Q
        qianchenzhumeng LV 3 最后由 编辑

        两种方法:

        • 链接的时候静态连接。
        • 把库打到镜像里面:pack 前把库放到 rootfs/lib 里面去(lunch 后输入 crootfs 命令可以进入 rootfs 目录),然后再 pack。
        J 2 条回复 最后回复 回复 引用 分享 0
        • J
          jr_online LV 7 @qianchenzhumeng 最后由 编辑

          @qianchenzhumeng 在 t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库 中说:

          两种方法:

          • 链接的时候静态连接。
          • 把库打到镜像里面:pack 前把库放到 rootfs/lib 里面去(lunch 后输入 crootfs 命令可以进入 rootfs 目录),然后再 pack。

          学到了学到了,谢谢大佬的指点✌

          1 条回复 最后回复 回复 引用 分享 0
          • J
            jr_online LV 7 @qianchenzhumeng 最后由 编辑

            @qianchenzhumeng 在 t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库 中说:

            两种方法:

            • 链接的时候静态连接。
            • 把库打到镜像里面:pack 前把库放到 rootfs/lib 里面去(lunch 后输入 crootfs 命令可以进入 rootfs 目录),然后再 pack。

            大佬,我试了第二种方法,库打不到镜像里咋办呀?并且重新make之后,放到‘rootfs/lib’里的库会被清掉

            T 1 条回复 最后回复 回复 引用 分享 0
            • T
              theOldFisherMan LV 3 @jr_online 最后由 编辑

              @jr_online 解决了吗,我也遇到这个问题

              J 1 条回复 最后回复 回复 引用 分享 0
              • J
                jr_online LV 7 @theOldFisherMan 最后由 编辑

                @theoldfisherman 在 t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库 中说:

                @jr_online 解决了吗,我也遇到这个问题

                暂时还没弄这个,你呢?现在解决了吗?

                T 1 条回复 最后回复 回复 引用 分享 0
                • T
                  theOldFisherMan LV 3 @jr_online 最后由 编辑

                  @jr_online 我解决了
                  crootfs 之后将 rootfs的文件复制到自己新建的文件夹(rootfs-pack)中:
                  7a3a7ef3-f041-4811-b8fb-9ce163671adb-image.png
                  d5ff10b5-a97b-4f2a-a49b-4f48e08dbd97-image.png

                  再将自己的库复制到rootfs-pack/lib中

                  然后:
                  mkdir rootfs

                  查看根文件大小
                  du rootfs-pack -h

                  这里我弄的是200M的镜像
                  dd if=/dev/zero of=rootfs.img bs=1M count=200

                  将镜像格式化为ext4
                  mkfs.ext4 rootfs.img

                  将镜像挂载到rootfs文件夹
                  sudo mount rootfs.img rootfs

                  将rootf-pack复制到rootfs
                  sudo cp -rfpd rootfs-pack/* ./rootfs

                  取消挂载
                  sudo umount rootfs.img

                  最后:
                  将rootfs.img替换Tina-Linux/out/t113-mq_r/rootfs.img之后,pack命令打包就可以了
                  fe9d719b-4db5-4c92-bb5e-2e988f023102-image.png
                  fbd729fc-bd72-41de-b941-b0c2e6ce2153-image.png

                  J 1 条回复 最后回复 回复 引用 分享 0
                  • J
                    jr_online LV 7 @theOldFisherMan 最后由 编辑

                    @theoldfisherman 在 t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库 中说:

                    @jr_online 我解决了
                    crootfs 之后将 rootfs的文件复制到自己新建的文件夹(rootfs-pack)中:
                    7a3a7ef3-f041-4811-b8fb-9ce163671adb-image.png
                    d5ff10b5-a97b-4f2a-a49b-4f48e08dbd97-image.png

                    再将自己的库复制到rootfs-pack/lib中

                    然后:
                    mkdir rootfs

                    查看根文件大小
                    du rootfs-pack -h

                    这里我弄的是200M的镜像
                    dd if=/dev/zero of=rootfs.img bs=1M count=200

                    将镜像格式化为ext4
                    mkfs.ext4 rootfs.img

                    将镜像挂载到rootfs文件夹
                    sudo mount rootfs.img rootfs

                    将rootf-pack复制到rootfs
                    sudo cp -rfpd rootfs-pack/* ./rootfs

                    取消挂载
                    sudo umount rootfs.img

                    最后:
                    将rootfs.img替换Tina-Linux/out/t113-mq_r/rootfs.img之后,pack命令打包就可以了
                    fe9d719b-4db5-4c92-bb5e-2e988f023102-image.png
                    fbd729fc-bd72-41de-b941-b0c2e6ce2153-image.png

                    好滴,感谢你分享方法,那这样的话是不是每次重新编译都要这样子来一遍?😵

                    T 1 条回复 最后回复 回复 引用 分享 0
                    • T
                      theOldFisherMan LV 3 @jr_online 最后由 编辑

                      @jr_online 重新编译后,Tina-Linux/out/t113-mq_r/rootfs.img会被覆盖😂 ,要将rootfs.img重新替换上去。我也是刚刚开始玩这个,还在摸索中。

                      J A 2 条回复 最后回复 回复 引用 分享 0
                      • J
                        jr_online LV 7 @theOldFisherMan 最后由 编辑

                        @theoldfisherman 在 t113(tina)加入paha.mqtt.c库,编译成固件烧录到板子上后报错找不到动态库 中说:

                        @jr_online 重新编译后,Tina-Linux/out/t113-mq_r/rootfs.img会被覆盖😂 ,要将rootfs.img重新替换上去。我也是刚刚开始玩这个,还在摸索中。

                        很强很强,一起加油![抱拳]

                        1 条回复 最后回复 回复 引用 分享 0
                        • A
                          a06041114 LV 4 @theOldFisherMan 最后由 编辑

                          @theoldfisherman 有没简单的办法,在编译系统和打包时,将这个库加进来

                          1 条回复 最后回复 回复 引用 分享 0
                          • baiwen
                            100ask LV 6 最后由 编辑

                            我也遇到了编译QT5 无法打包所有qt so库的情况。
                            经过调试发现
                            是最后打包制作 rootfs.img 时 自动将 脚本认为无用的 文件资源 库 给移除掉了。所以导致最终目标系统没有包含进去。


                            源码 build 目录 找到 reduce-rootfs-size.sh 脚本
                            找到 downsize_rootfs 函数,注释掉里面的几个 remove函数

                            6aad5b64-c79f-446e-988f-fac675fc2eee-image.png

                            具体打包无效原因在。
                            a552a01c-dff8-4cc1-80b5-d08e7e119784-image.png

                            a2ee0e16-cfc0-4460-a51b-2ce0a98069fa-image.png

                            1 条回复 最后回复 回复 引用 分享 1
                            • 1 / 1
                            • First post
                              Last post

                            Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

                            行为准则 | 用户协议 | 隐私权政策