Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] failure to compile due to identifier "__int128_t" is undefined on cuda-11.6 and gcc-9.4.0 #11750

Closed
umiswing opened this issue Sep 23, 2022 · 5 comments
Labels
bug Something isn't working CMake CMake build issue

Comments

@umiswing
Copy link

Describe the bug
Try to build cudf 22.10 from source. I run ./build.sh libcudf but get a compile error:

Error processing source file binaryop/jit/kernel.cu
Compilation failed: NVRTC_ERROR_COMPILATION
Compiler options: "-std=c++17 -D_FILE_OFFSET_BITS=64 -D__CUDACC_RTC__ -default-device"
cudf/fixed_point/fixed_point.hpp(29): error: identifier "__int128_t" is undefined

1 error detected in the compilation of "binaryop/jit/kernel.cu".

gmake[2]: *** [CMakeFiles/jitify_preprocess_run.dir/build.make:78: include/jit_preprocessed_files/binaryop/jit/kernel.cu.jit.hpp] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:686: CMakeFiles/jitify_preprocess_run.dir/all] Error 2
gmake[1]: *** Waiting for unfinished jobs....

Environment overview (please complete the following information)

  • Environment location: Bare-metal(Ubuntu 22.04)
  • Method of cuDF install: from source

Additional context
nvcc version: 11.6
GCC version: 9.4.0
cmake version: 3.23.3
hardware: GeForce RTX 3060 Mobile / Max-Q

@umiswing umiswing added Needs Triage Need team to review and classify bug Something isn't working labels Sep 23, 2022
@robertmaynard
Copy link
Contributor

Can you please post the output of cmake --system-information when executed in the the <cudf_dir>/cpp/build directory

@robertmaynard robertmaynard added CMake CMake build issue and removed Needs Triage Need team to review and classify labels Sep 27, 2022
@robertmaynard
Copy link
Contributor

During the compilation of JIT files the jit_preprocessed_files will try to locate the associated nvrtc library on your machine.

Therefore on machines with multiple CUDA installations, the version found via LD_LIBRARY_PATH will be selected with no regards to it being 11.5+ ( for int128 support ). So you should also ensure that LD_LIBRARY_PATH points to the lib64 directory of your nvcc 11.6 cuda toolkit.

A mismatch between the LD_LIBRARY_PATH searching and the provided compiler has been the only way I can reproduce this failure.

@vyasr
Copy link
Contributor

vyasr commented Oct 17, 2022

@umiswing does @robertmaynard's solution of repointing LD_LIBRARY_PATH fix your issue? If so, #11787 should resolve this problem once it's merged.

@umiswing
Copy link
Author

So sorry to reply so late!!! @robertmaynard 's solution fixes my issue. Thank you very much.

@vyasr
Copy link
Contributor

vyasr commented Oct 18, 2022

Great thank you for confirming @umiswing.

@vyasr vyasr closed this as completed Oct 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working CMake CMake build issue
Projects
None yet
Development

No branches or pull requests

3 participants