Trying to build nodejs using Intel C++ Compiler. Not going so well. First I had an issue very similar to https://software.intel.com/en-us/forums/intel-c-compiler/topic/733662 related to ICU and UTF8. I fixed it with -Qoption,cpp,--unicode_source_kind,"UTF-8" (is a utf-8 flag coming soon?)
Now I've hit errors building the v8 directory. Note first that Visual C++ compiler works fine in building nodejs. My issues are best illustrated by actually running vcbuild.bat from the nodejs github repository (to get a Visual Studio solution file), and then opening up the sln generated, converting it to Intel C++, and building it.
Some errors I've been getting
7> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 7> 7> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 7> 7> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function ..... 7> C:\VS2017\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\Intel C++ Compiler 19.0\Toolset.targets(383,5): error MSB6006: "icl.exe" exited with code 2. ... 7> Done executing task "ICL" -- FAILED. 7>Done building target "ClCompile" in project "v8_libsampler.vcxproj" -- FAILED. ... 7>Done building project "v8_libsampler.vcxproj" -- FAILED. 7>Build FAILED. 7> 7>C:\VS2017\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\Intel C++ Compiler 19.0\Toolset.targets(383,5): error MSB6006: "icl.exe" exited with code 2. 7> 0 Warning(s) 7> 1 Error(s) 7> 7>Time Elapsed 00:00:03.56
Another set of problems
16> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 16> 16> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 16> 16> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function 16> ... 16> C:\VS2017\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\Intel C++ Compiler 19.0\Toolset.targets(236,5): error MSB6006: "icl.exe" exited with code 2. 16> Done executing task "ICL" -- FAILED. 16>Done building target "ClCompile" in project "v8_base.vcxproj" -- FAILED. 16> 16>Done building project "v8_base.vcxproj" -- FAILED. 16> ..... 19> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function 19> 17> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 17> 17> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 17> 17> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function 17> 18> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function ... 19> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function ... 19> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function ... 19> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 19> 19> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function 19> ... 19> C:\VS2017\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\Intel C++ Compiler 19.0\Toolset.targets(383,5): error MSB6006: "icl.exe" exited with code 2. 19> Done executing task "ICL" -- FAILED. 19>Done building target "ClCompile" in project "v8_nosnapshot.vcxproj" -- FAILED. 19> 19>Done building project "v8_nosnapshot.vcxproj" -- FAILED. ... 17> compilation aborted for ..\src\setup-isolate-full.cc (code 2) 17> del Z:\USER\TMP\409961tempfile3 17> del Z:\USER\TMP\409962arg4 17> del Z:\USER\TMP\dshFE51.tmp 17> C:\VS2017\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\Intel C++ Compiler 19.0\Toolset.targets(383,5): error MSB6006: "icl.exe" exited with code 2. 17> Done executing task "ICL" -- FAILED. 17>Done building target "ClCompile" in project "v8_init.vcxproj" -- FAILED. 17> 17>Done building project "v8_init.vcxproj" -- FAILED. 17> ... 18> builtins-collections-gen.cc 18> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function ... 18> C:\Github\node\deps\v8\src\x64\assembler-x64.h(120): error : assertion failed at: "shared/cfe/edgcpfe/il.c", line 16005 18> 18> Register::ListOf<rax, rcx, rdx, 18> ^ 18> 18> builtins-array-gen.cc 18> Error: function "v8::Isolate::operator delete(void *, size_t={unsigned __int64})" (declared at line 8340 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "v8::Isolate::operator delete[](void *, size_t={unsigned __int64})" (declared at line 8341 of "..\include/v8.h") cannot be referenced -- it is a deleted function 18> 18> Error: function "Isolate::~Isolate(unsigned int)" (declared implicitly) cannot be referenced -- it is a deleted function
Note that towards the end of the above snippet is where the topic title "error: assertion failed..." comes from.
Then there are a bunch of repeat errors for 18> above, but there is also this:
18> C:\Github\node\deps\v8\src\x64\assembler-x64.h(120): error : access violation 18> Register::ListOf<rax, rcx, rdx, 18> ^
And concluding it all...
21>Target ComputeCustomBuildOutput: 21> Task "CreateItem" skipped, due to false condition; ('%(CustomBuildOutputs.OutputItemType)'!='') was evaluated as (''!=''). 21> Task "MakeDir" 21> Done executing task "MakeDir". 21>Target CustomBuild: 21> Using "GetOutOfDateItems" task from assembly "C:\VS2017\Common7\IDE\VC\VCTargets\Microsoft.Build.CppTasks.Common.dll". 21> Task "GetOutOfDateItems" 21> Done executing task "GetOutOfDateItems". 21> Task "ParallelCustomBuild" skipped, due to false condition; ('@(_ParallelCustomBuild)' != '') was evaluated as ('' != ''). 21> Using "CustomBuild" task from assembly "C:\VS2017\Common7\IDE\VC\VCTargets\Microsoft.Build.CppTasks.Common.dll". 21> Task "CustomBuild" 21> Write Tracking Logs: 21> Release\obj\v8_snapshot\v8_snapshot.tlog\custombuild.write.1.tlog 21> Read Tracking Logs: 21> Release\obj\v8_snapshot\v8_snapshot.tlog\custombuild.read.1.tlog 21> No output for C:\GITHUB\NODE\RELEASE\MKSNAPSHOT.EXE was found in the tracking log; source compilation required. 21> C:\Github\node\Release\\mksnapshot.exe will be compiled because it was not found in the tracking log. 21> call call C:\Github\node\Release\mksnapshot.exe "--turbo_instruction_scheduling""--startup_src""Release\obj\v8_snapshot\snapshot.cc" 21> if %errorlevel% neq 0 exit /b %errorlevel% 21> generating: "Release\obj\v8_snapshot\/snapshot.cc" 21> 'C:\Github\node\Release\mksnapshot.exe' is not recognized as an internal or external command, 21> operable program or batch file. 21> C:\VS2017\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(209,5): error MSB6006: "cmd.exe" exited with code 1. 21> Done executing task "CustomBuild" -- FAILED. 21>Done building target "CustomBuild" in project "v8_snapshot.vcxproj" -- FAILED. 21> 21>Done building project "v8_snapshot.vcxproj" -- FAILED. 21>