kozlov-alexey opened a new issue #8538:
URL: https://github.com/apache/arrow/issues/8538
Hi,
I'm not reporting it as bug since it's not actually a code related issue,
but probably a compiler one.
I'm having problems building arrow-cpp=0.17.1 in conda env on Windows with
MSVC toolchain, literally following ICE appears with VS2017 15.9.28 when
compiling file_base.cc:
```
(arrow-dev-2)
C:\Users\akozlov\AppData\Local\Continuum\anaconda3\arrow\cpp\build>cmake
--build . --target install --config Release
[21/45] Building CXX object
src\arrow\dataset\CMakeFiles\arrow_dataset_shared.dir\file_base.cc.obj
FAILED:
src/arrow/dataset/CMakeFiles/arrow_dataset_shared.dir/file_base.cc.obj
C:\PROGRA~2\MIB055~1\2017\PROFES~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\cl.exe
/nologo /TP -DARROW_DS_EXPORTING -DARROW_HAVE_SSE4_2 -DARROW_HDFS
-DARROW_WITH_TIMING_TESTS -DURI_STATIC_BUILD -D_CRT_SECURE_NO_WARNINGS
-Darrow_dataset_shared_EXPORTS -Isrc -I..\src -I..\src\generated
-I..\thirdparty\flatbuffers\include -I..\thirdparty\hadoop\include /DWIN32
/D_WINDOWS /GR /EHsc /D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING /EHsc
/bigobj /W3 /wd4800 /wd4996 /wd4065 /WX /MP /MD /O2 /Ob2 /DNDEBUG
/showIncludes
/Fosrc\arrow\dataset\CMakeFiles\arrow_dataset_shared.dir\file_base.cc.obj
/Fdsrc\arrow\dataset\CMakeFiles\arrow_dataset_shared.dir\ /FS -c
..\src\arrow\dataset\file_base.cc
c:\users\akozlov\appdata\local\continuum\anaconda3\arrow\cpp\src\arrow\vendored\variant.hpp(1008)
: fatal error C1001: An internal error has occurred in the compiler.
(compiler file 'd:\agent\_work\4\s\src\vctools\compiler\utc\src\p2\main.c',
line 187)
To work around this problem, try simplifying or changing the program near
the locations listed above.
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
INTERNAL COMPILER ERROR in
'C:\PROGRA~2\MIB055~1\2017\PROFES~1\VC\Tools\MSVC\1416~1.270\bin\Hostx64\x64\cl.exe'
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
[29/45] Linking CXX shared library release\arrow.dll
Creating library release\arrow.lib and object release\arrow.exp
[30/45] Building CXX object
src\arrow\python\CMakeFiles\arrow_python_shared.dir\arrow_to_pandas.cc.obj
ninja: build stopped: subcommand failed.
```
I've tried playing with optimization and other cl.exe options, but nothing
has helped, so we we now have to build arrow with VS2015 toolchain.
Exact compiler version was:
(arrow-dev)
C:\Users\akozlov\AppData\Local\Continuum\anaconda3\arrow\cpp\build>cl.exe -help
Microsoft (R) C/C++ Optimizing Compiler Version 19.16.27043 for x64
And VS conda packages were:
```
vc 14.1 h869be7e_1 conda-forge
vs2015_runtime 14.16.27012 h30e32a0_2 conda-forge
vs2017_win-64 19.16.27038 h2e3bad8_2 conda-forge
vswhere 2.7.1 h21ff451_0
```
Steps to reproduce:
```
conda create -n arrow-dev-2 --override-channels -c conda-forge -c intel -c
numba -c defaults python=3.7.7 conda-build
conda install --override-channels -c conda-forge -c intel -c numba -c
defaults vs2015_runtime=14.16.27012 vs2017_win-64=19.16.27038 aws-sdk-cpp
benchmark=1.4.1 boost-cpp>=1.68.0 brotli bzip2 c-ares cmake gflags glog
gmock>=1.8.1 grpc-cpp>=1.21.4 gtest=1.8.1 libprotobuf lz4-c make ninja
pkg-config python rapidjson snappy thrift-cpp>=0.11.0 zlib zstd numpy>=1.16
conda activate arrow-dev-2
cd <arrow-source-dir>
mkdir cpp\build
cd cpp\build
set "PREFIX=%CONDA_PREFIX%"
set "PYTHON=%PREFIX%\python.exe"
set "LIBRARY_PREFIX=%PREFIX%\Library"
set "LIBRARY_BIN=%PREFIX%\Library\bin"
set "LIBRARY_INC=%PREFIX%\Library\include"
set "LIBRARY_LIB=%PREFIX%\Library\lib"
cmake -G "Ninja" -DCMAKE_INCLUDE_PATH="%LIBRARY_INC"
-DCMAKE_INSTALL_PREFIX="%LIBRARY_PREFIX%" -DARROW_DEPENDENCY_SOURCE=CONDA
-DARROW_PACKAGE_PREFIX="%LIBRARY_PREFIX%"
-DLLVM_TOOLS_BINARY_DIR="%LIBRARY_BIN%" -DARROW_CSV:BOOL=ON
-DARROW_PYTHON:BOOL=ON -DARROW_BUILD_STATIC:BOOL=OFF -DARROW_PARQUET:BOOL=OFF
-DARROW_CXXFLAGS="/WX /MP" ..
cmake --build . --target install --config Release
```
Can you please take a look and report ICE to
[mpark::variant](https://github.com/mpark/variant) or MS Visual C++ team?
Kind Regards,
Alexey.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]