![不同的 Ubuntu 版本之间可以交叉编译吗?](https://linux22.com/image/951312/%E4%B8%8D%E5%90%8C%E7%9A%84%20Ubuntu%20%E7%89%88%E6%9C%AC%E4%B9%8B%E9%97%B4%E5%8F%AF%E4%BB%A5%E4%BA%A4%E5%8F%89%E7%BC%96%E8%AF%91%E5%90%97%EF%BC%9F.png)
真实案例:我有一台运行 Ubuntu 22.04 的开发机器。我的大多数客户都有一台专用的远程机器,也运行 Ubuntu,但版本不同 - 20.04、21.04 等...
我编写了 Qt 应用程序(它们是远程调试的),我发现即使 Qt 版本相同,二进制文件在不同的 Ubuntu 版本之间也不兼容。
问题:
- 我无法将所有远程机器升级到与我的开发机器相同的版本
- 我不想为每台目标机器都创建一个虚拟机(主要是因为我不喜欢在虚拟机中编写代码)
- 出于同样的原因,我会避免在远程机器上安装所有开发内容,并使用远程桌面应用程序进行远程编译
因此,我的标题问题是:是否可以针对不同的 Ubuntu 版本进行“交叉编译”?它可以解决我的问题:在我的本地机器上,我可以安装以前 Ubuntu 版本的库并为其目标构建每个 Qt 应用程序。
但我不知道这是否可能以及如何去做。