/usr/bin/ld: error: ../../lib/libnvinfer.so: file too short

一、背景

在编译TensorRT官方的C++库时,库里是提供了命令行工具bin文件夹下的可执行程序trtexec,可以直接进行onnx的fp16以及int8量化,但我模型的输入是5维,模型里面全都是3D卷积,所以要对底层头文件进行修改。重新编译出一个trtexec命令行工具。

二、报错

报错如下:
Linking: …/…/bin/trtexec_debug
/usr/bin/ld: error: …/…/lib/libnvinfer.so: file too short
在这里插入图片描述
说我这个so文件太短。。
检查了…/…/lib/路径下确实有libnvinfer.so这个文件,报错file too short其实就是你这个文件损坏了,我系统也有安装TensorRT,直接运行find命令找到libnvinfer.so,

sudo find / -name libnvinfer.so

把它拷到…/…/lib/文件夹下,即编译成功。

你可能感兴趣的:(c++)