AdaptiveCpp: ROCm 3.5 link error/ROCm hipStreamAddCallback crash

Have you seen this error before?

[ 50%] Linking CXX shared library libhipSYCL_rocm.so
/opt/rh/devtoolset-8/root/usr/lib/gcc/x86_64-redhat-linux/8/../../../../bin/ld: cannot find -lmcwamp
/opt/rh/devtoolset-8/root/usr/lib/gcc/x86_64-redhat-linux/8/../../../../bin/ld: cannot find -lhc_am
clang-9: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/sycl/libhipSYCL_rocm.so] Error 1
make[1]: *** [src/sycl/CMakeFiles/hipSYCL_rocm.dir/all] Error 2
make: *** [all] Error 2

I’m not inside the devtoolset-8, so there might be some hard coded paths curtesy of the ROCm install via the yum repository.

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 15

Most upvoted comments

Issue is known and will be fixed in ROCm 3.6: https://github.com/ROCm-Developer-Tools/HIP/issues/2119#issuecomment-652556974

I think we can close now here, because it’s not an hipSYCL issue and all that’s left to be done is to install a new ROCm. Please reopen if there is anything we need to do from the hipSYCL side.

That might be it. Looking into ROCCLR code (HIP/rocclr/hip_stream.cpp), I can’t find anything that would look like translation from HIP stream handle to actual object pointer. Its just hipStreamAddCallback which packs handle into StreamCallback object and in ihipStreamCallback its unpacked and casted to hip::Stream *. This obviously fails if stream handle is 0.