Package Details: rocm-opencl-runtime 5.1.3-1

Git Clone URL: https://aur.archlinux.org/rocm-opencl-runtime.git (read-only, click to copy)
Package Base: rocm-opencl-runtime
Description: Radeon Open Compute - OpenCL runtime
Upstream URL: https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime
Keywords: amd opencl rocm
Licenses: MIT
Conflicts: opencl-amdgpu-pro-pal
Provides: opencl-driver
Submitter: ulyssesrr
Maintainer: tpkessler
Last Packager: tpkessler
Votes: 37
Popularity: 2.81
First Submitted: 2019-03-17 05:06 (UTC)
Last Updated: 2022-05-21 10:08 (UTC)

Required by (38)

Sources (3)

Pinned Comments

acxz commented on 2020-03-09 06:42 (UTC)

Development is on Github: https://github.com/rocm-arch/rocm-arch Please open issues and PRs there instead of commenting.

Latest Comments

melvyn2 commented on 2022-05-06 00:19 (UTC)

For those who have missed it this package is patched to work on GFX8 (polaris 10, RX 480/580/590 and others) GPUs. This can replace the legacy ORCA OpenCL driver for those GPUs.

bob-xygene commented on 2022-04-01 17:55 (UTC) (edited on 2022-04-02 21:27 (UTC) by bob-xygene)

With the dependency 5.1.0 update, i lost my device, i fixed that this way :

ls -l /dev/dri/render*
sudo usermod -a -G render $USER
sudo usermod -a -G video $USER
su
echo /opt/rocm/llvm/lib > /etc/ld.so.conf.d/rocm-llvm.conf
ldconfig
exit
clinfo

This no more works since rocm-llvm-5.1.0-3 because they removed /opt/rocm/llvm/lib/libLLVM-14git.so and /opt/rocm/llvm/lib/libLLVM-14.0.0git.so

So if you want opencl to work you have to install llvm-git which is currently in V14 or you extract those libs from the previous installer rocm-llvm-5.1.0-1 and put them somewhere lib folder reachable by ldconfig.

What a mess those dependency.

archer666 commented on 2021-08-20 15:05 (UTC)

8GB RAM not enough to compile. The oom reaper comes for you.

2nd try after the same thing happened with 5GB RAM.

[24277.440604] Out of memory: Killed process 13582 (cc1plus) total-vm:1147924kB, anon-rss:932948kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:2032kB oom_score_adj:0

Maybe the thing could check available space and warn before compiling half an hour then croaking.

ivanmlerner commented on 2021-03-26 21:46 (UTC)

Warning is gone now by updating hsa-rocr

ReftaGrO commented on 2021-03-26 21:37 (UTC) (edited on 2021-03-26 21:40 (UTC) by ReftaGrO)

Anyone else experiencing the issue described here with 4.1.0?

https://github.com/RadeonOpenCompute/ROCm/issues/1426

I'm seeing these warnings with a 3000 series CPU and 6000 series GPU.

Warning: (!g_use_interrupt_wait || isIPC()) && "Use of non-host signal in host signal wait API." in virtual hsa_signal_value_t rocr::core::BusyWaitSignal::WaitRelaxed(hsa_signal_condition_t, hsa_signal_value_t, uint64_t, hsa_wait_state_t), ~/yay/hsa-rocr/src/ROCR-Runtime-rocm-4.1.0/src/core/runtime/default_signal.cpp:87

xcom commented on 2020-06-23 14:31 (UTC)

I found a good way.

  • first install llvm-amdgpu
  • after rocm.

It's much faster this way somehow.

Redi commented on 2020-06-17 09:25 (UTC)

@xcom

Yeah, sure you can create your own AUR package. Like rocm-opencl-runtime-bin or something. https://wiki.archlinux.org/index.php/AUR_submission_guidelines

xcom commented on 2020-06-12 13:49 (UTC)

Dear AUR maintainer!

Is it possible to create a Binary AUR from the ROCm 3.5.0 DEB package ? Compile rocm is huge. I'd be happier with a simple runtime binary.

pix3l commented on 2020-05-26 22:16 (UTC) (edited on 2020-05-26 22:33 (UTC) by pix3l)

@agm28011997 [arch4edu] Server = https://mirrors.tuna.tsinghua.edu.cn/arch4edu/$arch

or other mirrors in https://github.com/arch4edu/arch4edu/wiki/Add-arch4edu-to-your-Archlinux

Consider also using opencl-amd, because rocm packages are still behind and it's compiler got many bugs:: https://aur.archlinux.org/packages/opencl-amd/

usuariopolivalen commented on 2020-05-26 12:53 (UTC)

IS there any repo for this package?

pix3l commented on 2020-04-18 14:27 (UTC)

I wonder how it related to: https://aur.archlinux.org/packages/opencl-amd/

I've got one machine with Radeon VII and others are Intel based laptops. I try to keep one image on all machines, so up to now I've used opencl-amd, because after installing opencl-amdgpu-pro- I got crashes on Intel machine But now with rocm-opencl-runtime I understand I've got 3rd alternative, but not sure hwo they compares (I know that amdgpu-pro- are oficial and opencl-amd provides only OpenCL from amggpru-pro), so I'm more interested in comparison of rocm-opencl-runtime vs opencl-amd, what benefits it gives and what problems it causes(especially when it's installed,but used on Intel cards)

acxz commented on 2020-03-09 06:42 (UTC)

Development is on Github: https://github.com/rocm-arch/rocm-arch Please open issues and PRs there instead of commenting.

rsa commented on 2020-03-05 07:21 (UTC)

@rigred yes, HSA files are/should be included in rocr-runtime

rigred commented on 2020-03-03 13:13 (UTC)

Actually seems i'm missing the entirety of hsakmt related files? Weren't these meant to be included in rocr-runtime ?

rigred commented on 2020-03-03 12:33 (UTC)

Seems there's a couple of files missing Running strace on a trivial opencl binary reveals:

openat(AT_FDCWD, "/opt/rocm/lib/libhsa-amd-aqlprofile64.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/opt/rocm/lib/libamdocl-orca64.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/libamdocl-orca64.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

I've looked on my system but can't find them among the /usr/lib/ or /opt/rocm/lib/ directories.

Which package is supposed to include them?

rigred commented on 2020-03-03 12:22 (UTC)

I currently get no opencl devices exposed when running this version of the package.

Appears to be the same behaviour as here https://github.com/RadeonOpenCompute/ROCm/issues/977

Really bad issue.

Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.0 AMD-APP.internal (3052.0)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_object_metadata cl_amd_event_callback 
  Platform Max metadata object keys (AMD)         8
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 0

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  AMD Accelerated Parallel Processing
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   
  clCreateContext(NULL, ...) [default]            No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  No devices found in platform

ICD loader properties
  ICD loader Name                                 OpenCL ICD Loader
  ICD loader Vendor                               OCL Icd free software
  ICD loader Version                              2.2.12
  ICD loader Profile                              OpenCL 2.2

rsa commented on 2020-03-01 02:41 (UTC)

Currently I'm trying to update to 3.1.0 but unable to compile LLVM on a 16 GB machine on a single make thread. Something changed requiring a boatload of RAM to build, but I'll deliver it as soon as I can!

Al3xG commented on 2020-02-19 09:03 (UTC)

@rsa yeah I don't have any other OpenCL driver installed, however I do have the DDX driver and the Vulkan package installed. One thing I noticed is after the installation there isn't an opencl/ folder into /opt/rocm/, not sure if that's ok or not.

rsa commented on 2020-02-18 18:15 (UTC)

@agm28011997 AMD unfortunately doesn't publish binaries, and I don't have the means do set up a repository right now.

@Al3xG you should not uninstall mesa, it should run just fine alongside; this is for OpenCL, mesa is for OpenGL (mind the C<->G). That said, you might want to remove opencl-mesa to let this package be the sole provider for OpenCL.

Al3xG commented on 2020-02-18 14:27 (UTC)

Sorry for this, tried to find docs about how to install ROCm on Arch without luck. I have mesa installed, rocm-opencl-runtime installs fine but if I run clinfo or other tools such as hashcat it segfaults and X freezes after a few second with ERROR: failed to pin userptr (amdgpu). Not sure if I'm doing something wrong. Thought about removing Mesa completely before installing ROCm but it's so deep into my system I can't do that easily. Any advice please? Thanks.

usuariopolivalen commented on 2020-02-01 00:55 (UTC)

is there any repo for this package? is a pain in the ass compile it with a mobile proccesor...thank the mantainer in the other hand :)

naetherm commented on 2020-01-31 06:41 (UTC) (edited on 2020-01-31 06:41 (UTC) by naetherm)

Regarding the recent 3.0.0-2 release:

  -> Applying patch rocm-opencl-runtime-2.8.0-update-README.patch...
patching file README.md
Hunk #2 FAILED at 20.
1 out of 3 hunks FAILED -- saving rejects to file README.md.rej

rsa commented on 2020-01-30 02:27 (UTC)

@a2h no, AMD repository chain is a complete mess and the documentation is outdated as far as 2.7.0 so I blindly need to change parameters and arguments until something happens. I am trying to correctly build it but no luck so far.

a2h commented on 2020-01-28 18:07 (UTC)

When I build v2.10.0 the subsequent .pkg.tar.xz is about 56mb and it allows me to enable opencl in libreoffice and clinfo gives me 1 device for AMD Accelerated Parallel Processing, device gfx803 [Radeo Pro WX 5100]. However when I build this v3.0.0-1, the .pkg.tar.xz for rocm-opencl is only about 380k and rocm-device-libs about 550k. Much smaller. When I install it no device appears under AMD APP under clinfo and libreoffice won't allow me to enable opencl. Am I doing something wrong or are other's seeing similar? Thank you!

vanities commented on 2020-01-13 18:19 (UTC)

@rsa Thank you!

rsa commented on 2020-01-13 18:09 (UTC)

This has been flagged out-of-date, but due to a clusterfuck of repositories and an outdated README I couldn't make it compile for the latest version (3.0.0) yet. I'll update it as soon as possible.

vanities commented on 2019-12-19 17:21 (UTC) (edited on 2019-12-19 22:35 (UTC) by vanities)

@rsa I successfully compiled last night but now clinfo is saying Number of devices 0. I removed the opencl-amd package and lspci -nnk says my driver in use is amdgpu. What did I mess up?

Update: I updated my kernel from lts (4.19) to 5.3 and it fixed the issue.

vanities commented on 2019-12-19 01:30 (UTC)

@rsa thanks, so they haven't been updating because of hip? I'll try rebuilding everything again

rsa commented on 2019-12-19 00:56 (UTC)

@vanities this package is up to date, the dependencies are not and require manual intervention. Change them all to v2.10.0

vanities commented on 2019-12-19 00:47 (UTC)

I've tried building the dependencies with version v2.10.0 and I'm getting stuck in the middle of the compilation, what is the latest version of all of these packages that works?

magnade commented on 2019-10-27 01:35 (UTC)

Here is a PKGBUILD for 2.9.0: https://gist.github.com/magnade/bf17fb245b7e9fe2cd768db5d5994784 had to add another symlink for opencl headers failing

ulyssesrr commented on 2019-09-06 01:11 (UTC)

PKGBUILD for v2.7.0: https://gist.github.com/ulyssesrr/c94aff4373ea1cfaad5bd174696e3b9d

It's recommended to update both rocr-runtime and roct-thunk-interface packages, which aren't maintained by me. (I've posted updated PKGBUILDs on their comments sections)

noraj commented on 2019-08-24 19:06 (UTC)

@ulyssesrr 2.7.0 is out now, by the way don't forget libz3 ;)

ulyssesrr commented on 2019-07-30 05:21 (UTC)

@KozRoss Thanks, I will add it soon, AMD might be releasing a new version next week, so I will wait to see if that happens as this package compilation is quite long.

KozRoss commented on 2019-07-28 04:26 (UTC) (edited on 2019-07-28 05:25 (UTC) by KozRoss)

After building and installing this, I can't get clinfo to find any platforms. The output I get is:

[koz@Sebastian ~]$ clinfo

Number of platforms 0

EDIT: Upon further investigation, I discovered this has a runtime dependency on libz3, even for clinfo-type usage. This should really be a dependency of this package.

kbeckmann commented on 2019-07-11 17:43 (UTC) (edited on 2019-07-11 17:56 (UTC) by kbeckmann)

This package depends rocr-runtime>=2.6.0 which you currently have to build on your own.

artivision commented on 2019-06-29 14:59 (UTC)

"libhsa-ext-image64.so" is missing , no "hsa-ext-rocr-dev"?

daenney commented on 2019-06-25 14:53 (UTC) (edited on 2019-06-25 15:09 (UTC) by daenney)

This doesn't build cleanly in a chroot; it's missing a makedepends on git. One of the cmake invocations gets upset without it, yielding an error of could not find git for clone of googletest. It also needs at least a build dependency on mesa for GL/glx.h, should probably be a regular dependency though since it would be necessary at runtime too.

crimson_king commented on 2019-06-17 15:22 (UTC) (edited on 2019-06-17 16:16 (UTC) by crimson_king)

If any of you are unable to run Hashcat or other applications and have them use your ROCm OpenCL devices without root privileges, see the issues linked below for more information.

The workaround:

export TMPDIR=$HOME/

UPDATE: This workaround has been included in Hashcat. Building from the latest git will ensure it is applied. The problem still has be fixed in ROCm.

Issues filed: https://github.com/hashcat/hashcat/issues/2062

https://github.com/RadeonOpenCompute/ROCm/issues/822

artivision commented on 2019-05-22 01:17 (UTC)

Good day, i cannot find image support.

zgalvin commented on 2019-05-21 08:54 (UTC) (edited on 2019-05-21 09:25 (UTC) by zgalvin)

@ulyssesrr Same as @Maverick, libOpenCL.so symlink link to build directory rather then install path.

in the PKGBUILD: ln -s $srcdir/"/opt/rocm/opencl/lib/libOpenCL.so.1.2" "$pkgdir/opt/rocm/opencl/lib/libOpenCL.so" # not created automatically by ldconfig

maybe link like this: cd "$pkgdir/opt/rocm/opencl/lib/" ln -s x86_64/libOpenCL.so.1.2 libOpenCL.so # not created automatically by ldconfig

trougnouf commented on 2019-04-30 10:00 (UTC)

conflicts = rocm-opencl-runtime -> unresolvable package conflicts detected

aufkrawall commented on 2019-04-22 17:05 (UTC)

Yes, it provides a driver. You can e.g. check with Luxmark "LuxBall HDR" testscene if it works, it does so for me. Compatibility in general might be very limited though compared to the proprietary driver (which can be used with linux-mainline as well).

ulyssesrr commented on 2019-04-22 17:04 (UTC)

@codibit I've looked the other run-times packages, and it seems most of them do provide "opencl-driver", so I think it won't hurt to add it here. I will be updating the package to 2.3.0 later today and will make it provide opencl-driver.

codibit commented on 2019-04-22 10:14 (UTC)

Maybe this package is providing opencl-driver? There are some packages that require an opencl-driver (davinci-resolve, for instance) and maybe adding the provides key in this package might make installations simpler (if correct, of course :) ).

If instead of depending on opencl-driver I should add another dependency, I would appreciate if someone could tell me which one is correct.

Maverick commented on 2019-03-21 00:54 (UTC)

@ulyssesrr Thank you. For some reason it did link properly on recompile now - no idea what changed.

libOpenCL.so symlink seems to link to build directory rather then install path:

maverick@MavsArch /opt/rocm/opencl/lib % ll
total 69440
drwxr-xr-x 3 root root     4096 Mär 21 01:12 clang
drwxr-xr-x 3 root root     4096 Mär 21 01:12 cmake
-rw-r--r-- 1 root root     2476 Mär 19 01:08 hip.amdgcn.bc
lrwxrwxrwx 1 root root       14 Mär 19 01:08 libLTO.so -> libLTO.so.9svn
-rwxr-xr-x 1 root root 26250872 Mär 19 01:08 libLTO.so.9svn
lrwxrwxrwx 1 root root       83 Mär 19 01:08 libOpenCL.so -> /home/maverick/builds/rocm-opencl-runtime/src//opt/rocm/opencl/lib/libOpenCL.so.1.2
...

ulyssesrr commented on 2019-03-20 15:16 (UTC)

@PedroHLC Could you try building with https://aur.archlinux.org/packages/python2-z3-solver/ and report back? Naming is different but it's the same package, quite outdated through.

PedroHLC commented on 2019-03-20 15:03 (UTC)

python2-z3 was removed from community following https://www.archlinux.org/todo/die-python2-die

Any known alternative?

ulyssesrr commented on 2019-03-18 02:12 (UTC) (edited on 2019-03-18 02:36 (UTC) by ulyssesrr)

@VerruckteFuchs and @Nightbane112 Thanks for reporting the wrong path in patch file, I have fixed it in 2.2.0-3. (While incorrect it worked with some AUR helpers and thus eluded my testing)

@Maverick

/opt/rocm/lib/libhsa-runtime64.so is part of package rocr-runtime.

/opt/rocm/lib64/libhsakmt.so(.2) should be part of package roct-thunk-interface.

It seems your rocr-runtime package is not linking properly to your roct-thunk-interface package.

Check the output of ldd /opt/rocm/lib/libhsa-runtime64.so and report there. My outputs: http://ix.io/1DPn

Maverick commented on 2019-03-17 22:01 (UTC) (edited on 2019-03-17 22:02 (UTC) by Maverick)

@VerruckteFuchs

interesting - my PKGBUILD didn't complain. Can you tell me what version ob libhsakmt is unter /opt/rocm/lib64 after roct-thung-interface installation? For me it is libhsakmt.so.1.0.0 while the build asks for .so.2 and fails.

maverick@MavsArch ~% pacman -Ql roct-thunk-interface
roct-thunk-interface /etc/
roct-thunk-interface /etc/ld.so.conf.d/
roct-thunk-interface /etc/ld.so.conf.d/roct-thunk-interface.conf
roct-thunk-interface /opt/
roct-thunk-interface /opt/rocm/
roct-thunk-interface /opt/rocm/include/
roct-thunk-interface /opt/rocm/include/hsakmt.h
roct-thunk-interface /opt/rocm/include/hsakmttypes.h
roct-thunk-interface /opt/rocm/include/linux/
roct-thunk-interface /opt/rocm/include/linux/kfd_ioctl.h
roct-thunk-interface /opt/rocm/lib64/
roct-thunk-interface /opt/rocm/lib64/libhsakmt.so
roct-thunk-interface /opt/rocm/lib64/libhsakmt.so.1
roct-thunk-interface /opt/rocm/lib64/libhsakmt.so.1.0.0
roct-thunk-interface /opt/rocm/libhsakmt/
roct-thunk-interface /opt/rocm/libhsakmt/LICENSE.md
roct-thunk-interface /opt/rocm/libhsakmt/libhsakmt.pc

VerruckteFuchs commented on 2019-03-17 21:55 (UTC) (edited on 2019-03-17 21:57 (UTC) by VerruckteFuchs)

I got an error when trying to install:

patch: **** Can't open patch file /tmp/makepkg/rocm-opencl-runtime/src/../fix_rocm_opencl_build_order.patch : No such file or directory

There is an issue on line 75 of the PKGBUILD:

patch --forward --strip=1 --input="${srcdir}/../fix_rocm_opencl_build_order.patch"

The patch file is not up one directory, so the line should be:

patch --forward --strip=1 --input="${srcdir}/fix_rocm_opencl_build_order.patch"

After changing line 75 to use the patch file from the directory it is actually in, the package starts building just fine.

Maverick commented on 2019-03-17 21:32 (UTC)

Build fails. rocr-runtime 2.2.0-1 and roct-thunk-interface 2.2.0-1 are installed. Are we missing a dependancy?

/usr/bin/ld: warning: libhsakmt.so.2, needed by /opt/rocm/lib/libhsa-runtime64.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetClockCounters@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetNodeIoLinkProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtRegisterSharedHandleToNodes@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetNodeProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtSetMemoryPolicy@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtRegisterMemoryToNodes@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtDeregisterMemory@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtSetTrapHandler@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtWaitOnEvent@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtRegisterGraphicsHandleToNodes@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtCreateEvent@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtDestroyQueue@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtCreateQueue@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtCloseKFD@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetVersion@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtReleaseSystemProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtSetQueueCUMask@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtMapMemoryToGPU@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtQueryPointerInfo@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtUpdateQueue@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtUnmapMemoryToGPU@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtSetEvent@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtAllocMemory@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtShareMemory@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtAcquireSystemProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtWaitOnMultipleEvents@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtDestroyEvent@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtRegisterSharedHandle@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetNodeCacheProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtSetMemoryUserData@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtMapMemoryToGPUNodes@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtFreeMemory@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtGetNodeMemoryProperties@HSAKMT_1'
/usr/bin/ld: /opt/rocm/lib/libhsa-runtime64.so: undefined reference to `hsaKmtOpenKFD@HSAKMT_1'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Nightbane112 commented on 2019-03-17 15:35 (UTC)

@ulysserr I finally got it to compile by removing a dot in the PKGBUILD

From this :

patch --forward --strip=1 --input="${srcdir}/../fix_rocm_opencl_build_order.patch"

To this :

patch --forward --strip=1 --input="${srcdir}/./fix_rocm_opencl_build_order.patch"

ulyssesrr commented on 2019-03-17 14:53 (UTC) (edited on 2019-03-17 14:53 (UTC) by ulyssesrr)

@Nightbane112 Actually building with yay v9.1.0 works for me. But I fixed the PKGBUILD anyway as fix_rocm_opencl_build_order.patch was missing from the source array. Try now, it should work.

Nightbane112 commented on 2019-03-17 06:52 (UTC) (edited on 2019-03-17 06:54 (UTC) by Nightbane112)

Hi, I just tried installing this package but ran into an error. I'm using yay for this.

==> Starting prepare()...
patch: **** Can't open patch file /tmp/makepkg/rocm-opencl-runtime/src/../fix_rocm_opencl_build_order.patch : No such file or directory
==> ERROR: A failure occurred in prepare().
    Aborting...
Error making: rocm-opencl-runtime

ulyssesrr commented on 2019-03-17 05:34 (UTC) (edited on 2019-03-17 05:35 (UTC) by ulyssesrr)

This package has moved to rocm-opencl-runtime. Which is updated to version 2.2.0 already. https://aur.archlinux.org/packages/rocm-opencl-runtime/

The new package should download and build faster, the build errors that some users were experiencing are also fixed. Thanks.

commented on 2019-03-14 10:03 (UTC)

Latest build from master of 2.2.0 I'm getting this error [ 96%] Building CXX object runtime/CMakeFiles/oclruntime.dir/device/devkernel.cpp.o [ 96%] Building CXX object runtime/CMakeFiles/oclruntime.dir/device/devwavelimiter.cpp.o In file included from /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/platform/command.hpp:26, from /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/device/devwavelimiter.cpp:4: /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/platform/perfctr.hpp:27:60: warning: ignoring attributes on template argument ‘cl_perfcounter_property’ {aka ‘long unsigned int’} [-Wignored-attributes] typedef std::unordered_map<cl_perfcounter_property, ulong> Properties; ^ In file included from /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/device/devwavelimiter.cpp:4: /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/platform/command.hpp:61:33: warning: ignoring attributes on template argument ‘amd::Event::CallBackFunction’ {aka ‘void ()(_cl_event, int, void)’} [-Wignored-attributes] std::atomic<CallBackFunction> callback_; //!< callback function pointer. ^ [ 96%] Building CXX object runtime/CMakeFiles/oclruntime.dir/device/devprogram.cpp.o In file included from /home/alex/.cache/yay/rocm-opencl-git/src/opencl/runtime/device/devprogram.cpp:16: /home/alex/.cache/yay/rocm-opencl-git/src/opencl/build/runtime/device/rocm/libraries.amdgcn.inc:2:10: fatal error: oclc_correctly_rounded_sqrt_off.amdgcn.inc: No such file or directory #include "oclc_correctly_rounded_sqrt_off.amdgcn.inc" ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. make[2]: [runtime/CMakeFiles/oclruntime.dir/build.make:219: runtime/CMakeFiles/oclruntime.dir/device/devprogram.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:21006: runtime/CMakeFiles/oclruntime.dir/all] Error 2 make: ** [Makefile:152: all] Error 2

I'm using an RX 470.

cgx commented on 2019-03-07 12:14 (UTC) (edited on 2019-03-07 12:15 (UTC) by cgx)

Build of this package is failing here using pikaur:

==> Making package: rocm-opencl-git 2.1.r0.d3bfd48-1 (Thu 07 Mar 2019 02:12:09 PM EET)

==> WARNING: Skipping dependency checks.

==> Retrieving sources...

==> Extracting sources...

==> Starting pkgver()...

/home/user/.cache/pikaur/build/rocm-opencl-git/PKGBUILD: line 30: cd: /home/user/.cache/pikaur/build/rocm-opencl-git/src/opencl: No such file or directory

ulyssesrr commented on 2019-03-01 02:59 (UTC) (edited on 2019-03-01 03:00 (UTC) by ulyssesrr)

@el_barbado By default my packages build with -j8 as I have this set in /etc/makepkg.conf

From what I understand single core building is failing for you, correct? Will test a single core build later. But that is quite weird. Thanks

el_barbado commented on 2019-02-28 15:24 (UTC)

Just updated. Initially, it failed and I had to add my thread fix in again but everything worked great after that.

ulyssesrr commented on 2019-02-28 02:24 (UTC)

Updated to 2.1.0 based on fermyon's PKGBUILD, also added gtest to makedepends.

thx1138 commented on 2019-02-20 06:03 (UTC) (edited on 2019-02-20 06:05 (UTC) by thx1138)

Hmm -

makepkg -si

...

-- Installing: /var/build/rocm-opencl-git/pkg/rocm-opencl-git/lib/hip.amdgcn.bc

-- Installing: /var/build/rocm-opencl-git/pkg/rocm-opencl-git/lib/x86_64/libamdocl64.so

-- Set runtime path of "/var/build/rocm-opencl-git/pkg/rocm-opencl-git//lib/x86_64/libamdocl64.so" to ""

-- Installing: /var/build/rocm-opencl-git/pkg/rocm-opencl-git/bin/clinfo

-- Set runtime path of "/var/build/rocm-opencl-git/pkg/rocm-opencl-git//bin/clinfo" to ""

ln: failed to create symbolic link '/var/build/rocm-opencl-git/pkg/rocm-opencl-git/opt/rocm/opencl/lib/libOpenCL.so': No such file or directory

==> ERROR: A failure occurred in package().

Aborting...

Suggestions?

el_barbado commented on 2019-02-14 01:45 (UTC) (edited on 2019-02-14 01:46 (UTC) by el_barbado)

I was having some trouble with build failing at 97% on "Building CXX object runtime/CMakeFiles/oclruntime.dir/device/devprogram.cpp" By multi-threading the build the error was fixed.

I edited fermyon's PKGBUILD and now works for 2.1.x and 2.0.x (at least on my system).

https://gist.github.com/el-barbado/126aae6de40d079782746af637e94231

If you don't want to download, just replace line in fermyon's build section with following code:

MEM_AVAIL=`cat /proc/meminfo | grep MemTotal | awk {'print $2'}`
AVAIL_THREADS=`nproc`
MAX_THREADS=`echo $(( ${MEM_AVAIL} / $(( 1024 * 1024 * 4 )) ))`
if [ ${MAX_THREADS} -lt ${AVAIL_THREADS} ]; then
    NUM_BUILD_THREADS=${MAX_THREADS}
else
    NUM_BUILD_THREADS=${AVAIL_THREADS}
fi
if [ ${NUM_BUILD_THREADS} -lt 1 ]; then
    NUM_BUILD_THREADS=1
fi
make -j ${NUM_BUILD_THREADS}

I also added gtest as a dependency

puithove commented on 2019-01-06 18:24 (UTC)

Built with fermyon's PKGBUILD for 2.x - works fine, but needs to add a dependency for gtest or it fails with: /usr/bin/ld: cannot find -lgtest /usr/bin/ld: cannot find -lgtest_main

VerruckteFuchs commented on 2018-12-28 15:55 (UTC)

Build fails without gtest at around 98% or so. Adding it as a dependency would be a good idea.

fermyon commented on 2018-12-23 14:53 (UTC)

Patched for 2.0.0: https://gist.github.com/antifermion/bfc1a218af478a38da1a75118dd4ace9

trougnouf commented on 2018-12-20 21:07 (UTC) (edited on 2018-12-20 21:07 (UTC) by trougnouf)

So close.

[ 98%] Linking OCL static library ocml.lib.bc
Generating ocml.amdgcn.bc
[ 98%] Built target ocml_lib
In file included from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h:19,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/FileManager.h:19,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/Module.h:19,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h:13,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:13,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/tools/c-index-test/core_main.cpp:10:
/tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/include/llvm/ADT/SmallVector.h: In instantiation of ‘void llvm::SmallVectorTemplateBase<T, true>::push_back(const T&) [with T = std::pair<void*, long unsigned int>]’:
/tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/include/llvm/Support/Allocator.h:252:33:   required from ‘void* llvm::BumpPtrAllocatorImpl<AllocatorT, SlabSize, SizeThreshold>::Allocate(size_t, size_t) [with AllocatorT = llvm::MallocAllocator; long unsigned int SlabSize = 4096; long unsigned int SizeThreshold = 4096; size_t = long unsigned int]’
/tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/AST/ASTContext.h:651:42:   required from here
/tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/include/llvm/ADT/SmallVector.h:312:11: warning: ‘void* memcpy(void*, const void*, size_t)’ writing to an object of type ‘struct std::pair<void*, long unsigned int>’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
     memcpy(this->end(), &Elt, sizeof(T));
     ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/8.2.1/bits/stl_algobase.h:64,
                 from /usr/include/c++/8.2.1/bits/char_traits.h:39,
                 from /usr/include/c++/8.2.1/string:40,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/FileSystemOptions.h:18,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/FileManager.h:18,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Basic/Module.h:19,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/Frontend/PCHContainerOperations.h:13,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h:13,
                 from /tmp/yaourt-tmp-trougnouf/aur-rocm-opencl-git/src/opencl/compiler/llvm/tools/clang/tools/c-index-test/core_main.cpp:10:
/usr/include/c++/8.2.1/bits/stl_pair.h:208:12: note: ‘struct std::pair<void*, long unsigned int>’ declared here
     struct pair
            ^~~~
[ 98%] Linking CXX executable ../../../../bin/c-index-test
[ 98%] Built target c-index-test
make: *** [Makefile:152: all] Error 2
==> ERROR: A failure occurred in build().

clap22 commented on 2018-12-04 03:08 (UTC)

https://github.com/RadeonOpenCompute/ROCm/issues/537#issuecomment-423311687 - Sample installation to keep in mind, still, we should never do that kind of messing with files owned by other packages so I'm accepting suggestions on how to solve this.

clap22 commented on 2018-12-04 02:08 (UTC)

@leidola also need maintenance here

this one will be the troublesome one to fix, I had to do some ugly directory kungfu to make it work locally because AMD released 1.9.x sources with messed dir structure. I'll need a bit more time to make it work nicely with makepkg.

jacobgkau commented on 2018-10-30 22:58 (UTC) (edited on 2018-10-30 22:59 (UTC) by jacobgkau)

I had to install "gtest" from Community to successfully build, maybe investigate that as a make dependency? (I got "/usr/bin/ld: cannot find -lgtest" without it.)

leidola commented on 2018-06-07 02:08 (UTC)

Please note, that you need a compatible kernel and/or the corresponding amdgpu-dkms package. There is i.e. http://repo.radeon.com/rocm/apt/debian/pool/main/r/rock-dkms, however, that only works up to linux-4.13 :/