首页 > 解决方案 > 运行时未定义的符号错误(gcc-linux)

问题描述

我已经用 g++ 7.5 编译了一个库 A,它在实现文件 (.cpp) 中引用了另一个库 B 的类。但是引用的库 B 没有作为对库 A 的依赖项添加。

应用程序 -> libA.so -> libB.so

当我使用 msvc 和 Windows 运行这个库 A 时,我在应用程序运行时没有收到错误。使用 gcc & linux 运行时,应用程序运行时出现未定义符号错误。

这是为什么?为什么应用程序在windows下运行良好,而在linux下却不行?它在两个操作系统下都能很好地编译和链接。

标签: c++

解决方案


推荐阅读