kou opened a new issue, #44364:
URL: https://github.com/apache/arrow/issues/44364

   ### Describe the enhancement requested
   
   It seems that we should not export template class. It works with MSVC but 
doesn't work with clang-cl.
   
   See also: 
https://github.com/apache/arrow/issues/44310#issuecomment-2396360335
   
   ```text
   [53/72] Linking CXX shared library arrow_python.dll
   FAILED: arrow_python.dll arrow_python.lib
   C:\windows\system32\cmd.exe /C "cd . && "C:\Program 
Files\CMake\bin\cmake.exe" -E vs_link_dll --intdir=CMakeFiles\arrow_python.dir 
--rc=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\arm64\rc.exe 
--mt=C:\PROGRA~2\WI3CF2~1\10\bin\100226~1.0\arm64\mt.exe --manifests  -- 
C:\PROGRA~1\LLVM\bin\lld-link.exe /nologo 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\arrow_to_pandas.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\benchmark.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\common.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\datetime.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\decimal.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\deserialize.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\extension_type.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\helpers.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\inference.
 cc.obj CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\io.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\ipc.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\numpy_convert.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\numpy_init.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\numpy_to_arrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\python_test.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\python_to_arrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\pyarrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\serialize.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\udf.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\csv.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\filesystem.cc.obj  
/out:arrow_python.dll /implib:arrow_python.lib /pdb:arrow_python.pdb /dll 
/version:0.0 /machine:ARM64  /NODEFAULTLIB:LIBCMT /INCREMENTAL:NO  
C:\source\arrow\
 Install\lib\arrow_dataset.lib  C:\source\arrow\Install\lib\arrow_acero.lib  
C:\source\arrow\Install\lib\parquet.lib  C:\source\arrow\Install\lib\arrow.lib  
ws2_32.lib  C:\Programs\Python\Python312-arm64\libs\python312.lib  kernel32.lib 
user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib 
comdlg32.lib advapi32.lib && cd ."
   LINK: command "C:\PROGRA~1\LLVM\bin\lld-link.exe /nologo 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\arrow_to_pandas.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\benchmark.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\common.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\datetime.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\decimal.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\deserialize.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\extension_type.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\helpers.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\inference.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\io.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\ipc.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\numpy_convert.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\sr
 c\arrow\python\numpy_init.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\numpy_to_arrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\python_test.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\python_to_arrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\pyarrow.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\serialize.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\udf.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\csv.cc.obj 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\filesystem.cc.obj 
/out:arrow_python.dll /implib:arrow_python.lib /pdb:arrow_python.pdb /dll 
/version:0.0 /machine:ARM64 /NODEFAULTLIB:LIBCMT /INCREMENTAL:NO 
C:\source\arrow\Install\lib\arrow_dataset.lib 
C:\source\arrow\Install\lib\arrow_acero.lib 
C:\source\arrow\Install\lib\parquet.lib C:\source\arrow\Install\lib\arrow.lib 
ws2_32.lib C:\Programs\Python\Python312-arm64\libs\python312.lib kernel32.lib 
user32.lib gdi32.li
 b winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib 
advapi32.lib /MANIFEST:EMBED,ID=2" failed (exit code 1) with the following 
output:
   lld-link: error: undefined symbol: __declspec(dllimport) public: __cdecl 
arrow::TimeScalar<class arrow::Time32Type>::TimeScalar<class 
arrow::Time32Type>(int, enum arrow::TimeUnit::type)
   >>> referenced by 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj:(void __cdecl 
arrow::gdb::TestSession(void))
   >>> referenced by 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj:(void __cdecl 
arrow::gdb::TestSession(void))
   
   lld-link: error: undefined symbol: __declspec(dllimport) public: __cdecl 
arrow::TimeScalar<class arrow::Time64Type>::TimeScalar<class 
arrow::Time64Type>(__int64, enum arrow::TimeUnit::type)
   >>> referenced by 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj:(void __cdecl 
arrow::gdb::TestSession(void))
   >>> referenced by 
CMakeFiles\arrow_python.dir\pyarrow\src\arrow\python\gdb.cc.obj:(void __cdecl 
arrow::gdb::TestSession(void))
   ```
   
   ### Component(s)
   
   C++


-- 
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.

To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to