使用 -fPIC 重新编译以解决链接器错误 在这种情况下,编译错误表示静态库 (*.a )和您尝试链接的动态库(*.so)。要解决此问题,您应该将 libavcodec 库编译为共享对象 (.so),而不是静态对象 (.a)。 为此,您可以在./配置阶段。或者,您可以使用适当的标志来禁用静态库和共享库的编译。 附加说明: 错误中的 -fPIC 标志消息与实际解决方案无关。这是编译器建议使用位置无关代码(PIC)重新编译库,这在这种情况下不适用。 需要注意的是,将库编译为共享对象将导致与编译成静态库不同的编译过程。具体的编译标志和依赖项可能会根据您的环境而有所不同。