code-iai / ROSIntegration

Unreal Engine Plugin to enable ROS Support
MIT License
411 stars 133 forks source link

Plugin can not be compiled #169

Closed LancerXE closed 2 years ago

LancerXE commented 2 years ago

Hi, thank you for this great plugin! I was trying to install the ROSIntegrationVision plugin mentioned in the description, but I got this error:

[1/5] PCLaunch.rc [2/5] Module.ROSIntegrationVision.cpp e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(16): error C2079: 'PacketBuffer' uses undefined class 'DLLEXPORT' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(17): error C2059: syntax error: 'public' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(28): error C2143: syntax error: missing ';' before '{' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(28): error C2447: '{': missing function header (old-style formal list?) e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(53): error C3646: 'Translation': unknown override specifier e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(53): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(67): error C2059: syntax error: 'private' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C2065: 'uint8': undeclared identifier e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C2923: 'std::vector': 'uint8' is not a valid template type argument for parameter '_Ty' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C3203: 'allocator': unspecialized class template can't be used as a template argument for template parameter '_Alloc', expected a real type e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C2133: 'ReadBuffer': unknown size e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C2512: 'std::vector': no appropriate default constructor available C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(625): note: see declaration of 'std::vector' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(68): error C2133: 'WriteBuffer': unknown size e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(73): error C2059: syntax error: 'public' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): error C2146: syntax error: missing ';' before identifier 'SizeHeader' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): error C2086: 'const int uint32': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'uint32' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): error C2146: syntax error: missing ';' before identifier 'OffsetColor' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(79): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(79): error C2086: 'const int uint32': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'uint32' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(79): error C2146: syntax error: missing ';' before identifier 'Size' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(81): error C2143: syntax error: missing ';' before '*' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(81): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C2146: syntax error: missing ')' before identifier 'Width' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C3646: 'Width': unknown override specifier e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C2365: 'PacketBuffer': redefinition; previous definition was 'data variable' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(15): note: see declaration of 'PacketBuffer' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C2373: 'uint32': redefinition; different type modifiers e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'uint32' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): warning C4228: nonstandard extension used: qualifiers after comma in declarator list are ignored e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C2146: syntax error: missing ';' before identifier 'Height' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(86): error C2059: syntax error: ')' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(89): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(89): error C2143: syntax error: missing ',' before '<' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(102): error C2059: syntax error: '}' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(102): error C2143: syntax error: missing ';' before '}' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2146: syntax error: missing ')' before identifier 'Width' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C3646: 'Width': unknown override specifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2365: 'PacketBuffer': redefinition; previous definition was 'data variable' e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(15): note: see declaration of 'PacketBuffer' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2373: 'uint32': redefinition; different type modifiers e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'uint32' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): warning C4228: nonstandard extension used: qualifiers after comma in declarator list are ignored E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2146: syntax error: missing ';' before identifier 'Height' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(5): error C2059: syntax error: ')' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2371: 'IsDataReadable': redefinition; different basic types e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(69): note: see declaration of 'IsDataReadable' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2086: 'int SizeHeader': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'SizeHeader' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2065: 'Width': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2065: 'Height': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2086: 'int SizeRGB': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'SizeRGB' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2065: 'FFloat16': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(6): error C2086: 'int SizeFloat': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'SizeFloat' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(7): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(7): error C2086: 'int OffsetColor': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): note: see declaration of 'OffsetColor' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(7): error C2086: 'int OffsetDepth': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): note: see declaration of 'OffsetDepth' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(7): error C2086: 'int OffsetObject': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): note: see declaration of 'OffsetObject' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(7): error C2086: 'int OffsetMap': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(77): note: see declaration of 'OffsetMap' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(8): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(8): error C2086: 'int Size': redefinition e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(79): note: see declaration of 'Size' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(9): error C2448: 'Size': function-style initializer appears to be a function definition E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(43): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(43): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(43): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(43): error C2143: syntax error: missing ',' before '<' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(47): error C2440: 'initializing': cannot convert from 'int ' to 'uint8_t ' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(47): note: Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(50): error C2065: 'ObjectToColor': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(51): error C3312: no callable 'begin' function found for type 'unknown-type' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(51): error C3312: no callable 'end' function found for type 'unknown-type' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(52): error C2065: 'Elem': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(52): error C2789: 'NameSize': an object of const-qualified type must be initialized E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(52): note: see declaration of 'NameSize' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(54): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(54): error C2143: syntax error: missing ';' before '&' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(54): error C2065: 'ObjectColor': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(54): error C2065: 'ObjectColors': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(54): error C2065: 'Elem': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(57): error C2662: '_Vector_alloc<_Alloc_types>::_Val_types::size_type std::vector<_Ty,_Alloc>::size(void) noexcept const': cannot convert 'this' pointer from 'std::vector' to 'const std::vector<_Ty,_Alloc> &' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(57): note: Reason: cannot convert from 'std::vector' to 'const std::vector<_Ty,_Alloc>' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(57): note: Conversion requires a second user-defined-conversion operator or constructor E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(59): error C2662: '_Vector_alloc<_Alloc_types>::_Val_types::size_type std::vector<_Ty,_Alloc>::size(void) noexcept const': cannot convert 'this' pointer from 'std::vector' to 'const std::vector<_Ty,_Alloc> &' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(59): note: Reason: cannot convert from 'std::vector' to 'const std::vector<_Ty,_Alloc>' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(59): note: Conversion requires a second user-defined-conversion operator or constructor E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(59): error C2663: 'std::vector<_Ty,_Alloc>::resize': 2 overloads have no legal conversion for 'this' pointer E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(61): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(61): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(62): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(62): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(63): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(63): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(64): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(64): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(65): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(65): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(71): error C2065: 'ObjectColor': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(72): error C2065: 'ObjectColor': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(73): error C2065: 'ObjectColor': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(76): error C2065: 'Elem': undeclared identifier E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(76): error C3861: 'TCHAR_TO_ANSI': identifier not found E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(87): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(87): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(92): error C2662: 'void std::vector<_Ty,_Alloc>::swap(std::vector<_Ty,_Alloc> &) noexcept': cannot convert 'this' pointer from 'std::vector' to 'std::vector<_Ty,_Alloc> &' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(92): note: Reason: cannot convert from 'std::vector' to 'std::vector<_Ty,_Alloc>' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(92): note: Conversion requires a second user-defined-conversion operator or constructor E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(93): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(93): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(94): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(94): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(95): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(95): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(96): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(96): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(97): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(97): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(98): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(98): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(99): error C2678: binary '[': no operator found which takes a left-hand operand of type 'std::vector' (or there is no acceptable conversion) C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1739): note: could be 'const _Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type) const' C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\INCLUDE\vector(1730): note: or '_Ty &std::vector<_Ty,_Alloc>::operator [](const _Vector_alloc<_Alloc_types>::_Val_types::size_type)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(99): note: while trying to match the argument list '(std::vector, int)' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(104): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(104): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(108): error C3482: 'this' can only be used as a lambda capture within a non-static member function E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(113): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(113): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(119): error C2825: 'PacketBuffer': must be a class or namespace when followed by '::' E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Source\ROSIntegrationVision\Private\PacketBuffer.cpp(119): error C2510: 'PacketBuffer': left of '::' must be a class/struct/union e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(727): error C2378: 'uint8': redefinition; symbol cannot be overloaded with a typedef e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(81): note: see declaration of 'uint8' e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(731): error C2378: 'uint32': redefinition; symbol cannot be overloaded with a typedef e:\yuxinirp\plugins\rosintegrationvision\rosvision\hostproject\plugins\rosintegrationvision\source\rosintegrationvision\private\PacketBuffer.h(75): note: see declaration of 'uint32' e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(807): error C2338: BYTE type size test failed. e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(808): error C2064: term does not evaluate to a function taking 1 arguments e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(808): error C2338: BYTE type sign test failed. e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(814): error C2065: 'uint32': undeclared identifier e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\HAL/Platform.h(840): error C2065: 'uint32': undeclared identifier e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\CoreFwd.h(58): error C3064: 'uint8': must be a simple type or resolve to one e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\CoreFwd.h(59): error C3064: 'uint8': must be a simple type or resolve to one e:\yuxinirp\unreal\ue_4.20\engine\source\runtime\core\public\CoreFwd.h(59): fatal error C1003: error count exceeds 100; stopping compilation [3/5] Module.ROSIntegrationVision.gen.cpp ..\Plugins\ROSIntegration\Source\ROSIntegration\Classes\ROSIntegrationCore.h(7): fatal error C1083: Cannot open include file: 'ROSIntegrationCore.generated.h': No such file or directory ERROR: UBT ERROR: Failed to produce item: E:\YuxinIRP\Plugins\ROSIntegrationVision\ROSVISION\HostProject\Plugins\ROSIntegrationVision\Binaries\Win64\UE4Editor-ROSIntegrationVision.dll (see E:\YuxinIRP\Unreal\UE_4.20\Engine\Programs\AutomationTool\Saved\Logs\UBT-UE4Editor-Win64-Development.txt for full exception trace) Total build time: 65.08 seconds (Parallel executor: 0.00 seconds) Took 65.5037571s to run UnrealBuildTool.exe, ExitCode=5 ERROR: UnrealBuildTool failed. See log for more details. (E:\YuxinIRP\Unreal\UE_4.20\Engine\Programs\AutomationTool\Saved\Logs\UBT-UE4Editor-Win64-Development.txt) (see E:\YuxinIRP\Unreal\UE_4.20\Engine\Programs\AutomationTool\Saved\Logs\Log.txt for full exception trace) AutomationTool exiting with ExitCode=5 (5) BUILD FAILED

I'm using 4.20 Unreal Engine and Visual studio 2017. I also tried Unreal Engine 4.25 but got the same error.

LancerXE commented 2 years ago

Solved by using an earlier version.