我有一些源代码打算在将来为 Windows/Linux 和其他平台编译/调试。
到目前为止,它在 Windows 上运行,所以我在 VisualStudio 中安装了“使用 C++ 进行 Linux 开发”包,以便为 Linux 编译/调试它。
我尝试了一个有效的小示例,但它会在编译之前上传源代码,这不是我想要的。
我想在我的 Windows PC 上本地编译源代码(使用 LLVM),而不是让 VisualStudio 将源文件复制到 linux 虚拟机/服务器以进行远程编译。
我更喜欢只将源代码放在一个“安全”位置,并将所有内容(如编译器和 Linux 系统文件头)保存在本地。所以我不上传源代码的主要原因是安全和源代码控制。
因此 VisualStudio 会在本地编译(使用 LLVM),然后将可执行文件上传到 linux 虚拟机/服务器上并运行它进行调试。或者,如果可执行文件已经存在或正在运行,它可以启动它或附加到进程以进行远程调试 session 。
我不确定这是否可行。我看到的所有示例都假定源代码位于 linux 目标上。
最佳答案
那是行不通的。 Linux VM 不仅用于运行/调试,还用于构建 — 从技术上讲,您可以交叉编译,但它要复杂得多,功能设计者选择不这样做。
It is possible to turn off the copying of sources , 但前提是您已经通过其他方式复制/同步它们:
The Copy Sources property page allows you to specify whether to copy sources to the remote Linux system. You may not want to copy sources if you are working with a share or are managing your own synchronization through other means.
如果您无法保护 VM 或它与您的主要开发环境之间的路径,您应该切换到一个完全封闭的、基于 Linux 的开发环境。
关于c++ - 在 Visual Studio 中使用 'Linux development with C++' 时如何将源保留在本地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55903168/