Elain_Wang 2022-02-16 19:04 采纳率: 100%
浏览 291
已结题

请问如何在yocto的应用中编译时添加动态链接库

刚开始接触yocto,很多简单的问题都会花费很多时间,现在有一个问题想请教各位。我在yocto下生成一个应用,是基于QT的,想要使用RSA验签,貌似libcrypto.so和libssl.so中有类似的接口,怎样将这些动态库加入我的应用中呢?我现在编译链接时报错,找不到相关的接口函数。
“undefined reference to PEM_read_RSAPrivateKey'” “undefined reference to RSA_sign'”

我尝试在bb文件中加入2句不行:
FILES_${PN} += "${TOPDIR}/tmp/work/aarch64-poky-linux/example/0.1-r0/recipe-sysroot/usr/lib64/libssl.so"
FILES_${PN} += "${TOPDIR}/tmp/work/aarch64-poky-linux/example/0.1-r0/recipe-sysroot/usr/lib64/libcrypto.so"

在QT的pro文件中加入这行也不行:
LIBS += -L${TOPDIR}/tmp/work/aarch64-poky-linux/example/0.1-r0/recipe-sysroot/usr/lib64 -lcrypto -lssl

  • 写回答

1条回答 默认 最新

  • 秋天的毛毛虫 2022-02-17 15:07
    关注

    如果so库调用正确,还出现这个未定义的问题。要么是函数名称写错了,要么是驱动库版本不对,该版本里没有此函数。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月25日
  • 已采纳回答 2月17日
  • 修改了问题 2月17日
  • 创建了问题 2月16日