使用远程主机构建Linux - 跨平台 [英] Linux build using remote host - cross platform

查看:90
本文介绍了使用远程主机构建Linux - 跨平台的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个大项目(大约1000个soc / cpp文件)。我正在使用跨平台通过linux vm主机与VS2017构建linux项目。在链接时编译错误虽然ld我得到以下错误。我使用已安装的驱动器来构建
项目。我现在没有使用make文件

Hi , I have a big project (about 1000 soc /cpp files). I am using cross platform to build linux project with VS2017 through linux vm host. After the compilation error while linking though ld i get the following error. I ma using mounted drive for building project. I am not using make file as of now

1> ------ Build build:Project:Applications,Configuration:Release x64 ------

1> C:\Program Files(x86)\ Microsoft Visual Studio \\\ 2017; \\ Professional \ Common7 \IDE \VC \ VCTargets\Microsoft.CppBuild.targets(376,5):警告MSB8004:中间目录不以尾部斜杠结束。 此构建实例将添加斜杠,因为它需要
才能正确评估中间目录。

1>验证架构

1>启动远程构建

1>编译来源:

1>链接对象

1> C:\Program Files(x86)\ Microsoft Visual Studio \ 2017\Professional\Common7\IDE\VC\VCTargets\Application Type \Linux\1.0 \Linux.targets(341,5):错误:数据包太大了。最大数据包大小为68536字节。

1>完成构建项目"Applications.vcxproj" - FAILED。

1>------ Build started: Project: Applications, Configuration: Release x64 ------
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(376,5): warning MSB8004: Intermediate Directory does not end with a trailing slash.  This build instance will add the slash as it is required to allow proper evaluation of the Intermediate Directory.
1>Validating architecture
1>Starting remote build
1>Compiling sources:
1>Linking objects
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Application Type\Linux\1.0\Linux.targets(341,5): error : Packet is too big. Maximum packet size is 68536 bytes.
1>Done building project "Applications.vcxproj" -- FAILED.

链接在哪里发生? - 在linux vm或windows subsytem?

Where does the linking occur?- In linux vm or windows subsytem?

在linux vm和vs2017 windows之间是否有* .o文件的传输?

is there transfer of *.o files between linux vm and vs2017 windows?

谢谢,



Thanks,

推荐答案

感谢您在此处发帖。

>>链接发生在哪里? - 在linux vm或windows subsytem?

是否在linux vm和vs2017 windows之间传输了* .o文件?当我打印出HRESULT时,值为0x80004002。

您是否检查了项目的复制源属性?检查是否为远程Linux系统指定了太大的复制源?

Have you checked the copy source property of your project? Check if you have specified too large copy sources to the remote Linux system?

项目系统在Windows和Linux之间同步源,并为您提供广泛的控制以便在需要时自行管理它。 "复制源"属性页允许您指定是否将源复制到远程Linux系统。
TCP数据包大小的绝对限制是64K(65535字节),但实际上这远远大于您将看到的任何数据包的大小,因为较低层(例如以太网)具有较低的数据包大小。

The project system synchronizes your sources between Windows and Linux, and provides you with extensive control to manage this yourself if you need it. The Copy Sources property page allows you to specify whether to copy sources to the remote Linux system. The absolute limitation on TCP packet size is 64K (65535 bytes), but in practicality this is far larger than the size of any packet you will see, because the lower layers (e.g. ethernet) have lower packet sizes.

有关详细信息,请参阅以下文档。

For more information, please refer to this document below.

https://blogs.msdn.microsoft.com/vcblog/2017/04/11/linux-development-with-c- in-visual-studio /

希望这可以帮到你。

最好的问候,

Baron Bi


这篇关于使用远程主机构建Linux - 跨平台的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆