You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译TTL 232R库示例:Linux下main.c出现未定义引用链接错误

解决FTD2xx库编译时的未定义引用错误

这些undefined reference错误是链接阶段未关联FTDI的ftd2xx库导致的——头文件ftd2xx.h只提供了函数声明,链接器需要找到这些函数的二进制实现(库文件)才能生成可执行文件。

解决步骤:

  • 确认ftd2xx库文件位置:
    解压或安装FTDI驱动后,会生成libftd2xx.so(动态库)或libftd2xx.a(静态库),路径通常是/usr/local/lib或你存放库的自定义目录。
  • 修改编译命令:
    1. 使用动态库编译:
      若库在系统默认搜索路径(如/usr/local/lib),直接执行:
      gcc main.c -o main -lftd2xx
      
      若库在自定义路径(比如~/ftdi/lib),需用-L指定库路径:
      gcc main.c -o main -L~/ftdi/lib -lftd2xx
      
    2. 使用静态库编译:
      直接指定静态库文件的完整路径:
      gcc main.c -o main ~/ftdi/lib/libftd2xx.a
      
  • 动态库运行时配置(使用动态库时):
    运行程序前需让系统识别动态库:
    • 临时生效:
      export LD_LIBRARY_PATH=/path/to/lib:$LD_LIBRARY_PATH
      
    • 永久生效:
      编辑/etc/ld.so.conf添加库路径,执行sudo ldconfig更新配置

内容的提问来源于stack exchange,提问作者ArunS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 16:12:48