Bug#949767: arrayfire update fails in configure step
On Thu, Apr 29, 2021 at 04:45:20PM +0200, Gard Spreemann wrote: > The capitalization typo seems to be present also in arrayfire's > use_debian_packaged_libs.patch: I believe line 64 of > > > https://salsa.debian.org/science-team/arrayfire/-/blob/a11a6fef7dadf8ce594920626058990fe0caeb2a/debian/patches/use_debian_packaged_libs.patch#L64 > > should read > > +find_package(CLBlast) > > instead of > > +find_package(CLBLast) > > as it currently does. This works now. I decided to commit libclblast-dev (>= 1.5.2-2~) assuming you will upload this version sooner or later. Now I / someone who intends to keep on maintaining this package (ping Ghislain are you actively maintaing this package any more?) needs to deal with the Debian packaged gtest - I'm afraid I'm currently busy with other things since I think it is OK to remove clblas from Debian since arrayfire probably can go without it. This was the main purpose why I checked this package. > > BTW, It would be great if [1] would feature a pristine-tar branch. > > I'll look into creating pristine-tar branches for my packages. Thanks > for the nudge! You are welcome. I'd recommend reading the chapter about importing upstream sources of Debian Science policy[1]. Thanks a lot for your very helpful hints Andreas. [1] https://science-team.pages.debian.net/policy/#idm306 -- http://fam-tille.de
Bug#949767: arrayfire update fails in configure step
Gard Spreemann writes: > Gard Spreemann writes: > >> Andreas Tille writes: >> >>> Hi Aaron, >>> >>> On Tue, Apr 27, 2021 at 08:14:10PM -0400, Aaron M. Ucko wrote: Please try adding a build dependency on libclfft-dev and replacing src/backend/opencl/CMakeLists.txt's inclusion of build_clFFT with a call to find_package(clFFT) > Thanks a lot for your initial hint >>> >>> Thanks again. I now tried to learn from this and added a similar patch >>> for CLBLast[1] but as you can see in the new log[2] it is not that >>> simple. I tried to compare the content of >>> libclfft-dev_2.12.2-3.1_amd64.deb and libclblast-dev_1.5.2-1_amd64.deb >>> how the cmake files under /usr/lib/x86_64-linux-gnu/cmake/ are looking >>> like and I need to admit I have no idea why this fails. >> >> This seems to be just a typo on my part. The logs have >> >> *** >> CMake Warning at CMakeModules/build_CLBlast.cmake:8 (find_package): >> By not providing "FindCLBLast.cmake" in CMAKE_MODULE_PATH this project has >> asked CMake to find a package configuration file provided by "CLBLast", but >> CMake did not find one. >> Could not find a package configuration file provided by "CLBLast" with any >> of the following names: >> CLBLastConfig.cmake >> clblast-config.cmake >> Add the installation prefix of "CLBLast" to CMAKE_PREFIX_PATH or set >> "CLBLast_DIR" to a directory containing one of the above files. If >> "CLBLast" provides a separate development package or SDK, be sure it has >> been installed. >> *** >> >> libclblast-dev ships >> >> /usr/lib/x86_64-linux-gnu/cmake/CLBLast/CLBlastConfig.cmake >> >> Notice that there's both "CLBLast" and "CLBlast" in there! I'll >> investigate. > > Looks like an upstream bug; consider the inconsistent capitalization of > the second l in "clblast" online 363 in > > > https://salsa.debian.org/gspr/clblast/-/blob/54e86eec37593623a5f692a39d78355043a402ad/CMakeLists.txt#L363 > > I'll report it upstream and patch src:clblast. Could you try with the patch from the debian/gspr/typo branch of [1]? Alternatively, I put a built version of the patched clblast up at [2]. [1] https://salsa.debian.org/gspr/clblast.git [2] https://nonempty.org/~gspr/clblast-typo/ Best, Gard signature.asc Description: PGP signature
Bug#949767: arrayfire update fails in configure step
Gard Spreemann writes: > Andreas Tille writes: > >> Hi Aaron, >> >> On Tue, Apr 27, 2021 at 08:14:10PM -0400, Aaron M. Ucko wrote: >>> Please try adding a build dependency on libclfft-dev and replacing >>> src/backend/opencl/CMakeLists.txt's inclusion of build_clFFT with a call >>> to >>> >>> find_package(clFFT) >>> >>> > Thanks a lot for your initial hint >> >> Thanks again. I now tried to learn from this and added a similar patch >> for CLBLast[1] but as you can see in the new log[2] it is not that >> simple. I tried to compare the content of >> libclfft-dev_2.12.2-3.1_amd64.deb and libclblast-dev_1.5.2-1_amd64.deb >> how the cmake files under /usr/lib/x86_64-linux-gnu/cmake/ are looking >> like and I need to admit I have no idea why this fails. > > This seems to be just a typo on my part. The logs have > > *** > CMake Warning at CMakeModules/build_CLBlast.cmake:8 (find_package): > By not providing "FindCLBLast.cmake" in CMAKE_MODULE_PATH this project has > asked CMake to find a package configuration file provided by "CLBLast", but > CMake did not find one. > Could not find a package configuration file provided by "CLBLast" with any > of the following names: > CLBLastConfig.cmake > clblast-config.cmake > Add the installation prefix of "CLBLast" to CMAKE_PREFIX_PATH or set > "CLBLast_DIR" to a directory containing one of the above files. If > "CLBLast" provides a separate development package or SDK, be sure it has > been installed. > *** > > libclblast-dev ships > > /usr/lib/x86_64-linux-gnu/cmake/CLBLast/CLBlastConfig.cmake > > Notice that there's both "CLBLast" and "CLBlast" in there! I'll > investigate. Looks like an upstream bug; consider the inconsistent capitalization of the second l in "clblast" online 363 in https://salsa.debian.org/gspr/clblast/-/blob/54e86eec37593623a5f692a39d78355043a402ad/CMakeLists.txt#L363 I'll report it upstream and patch src:clblast. Best, Gard
Bug#949767: arrayfire update fails in configure step
Andreas Tille writes: > Hi Aaron, > > On Tue, Apr 27, 2021 at 08:14:10PM -0400, Aaron M. Ucko wrote: >> Please try adding a build dependency on libclfft-dev and replacing >> src/backend/opencl/CMakeLists.txt's inclusion of build_clFFT with a call >> to >> >> find_package(clFFT) >> >> > Thanks a lot for your initial hint > > Thanks again. I now tried to learn from this and added a similar patch > for CLBLast[1] but as you can see in the new log[2] it is not that > simple. I tried to compare the content of > libclfft-dev_2.12.2-3.1_amd64.deb and libclblast-dev_1.5.2-1_amd64.deb > how the cmake files under /usr/lib/x86_64-linux-gnu/cmake/ are looking > like and I need to admit I have no idea why this fails. This seems to be just a typo on my part. The logs have *** CMake Warning at CMakeModules/build_CLBlast.cmake:8 (find_package): By not providing "FindCLBLast.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "CLBLast", but CMake did not find one. Could not find a package configuration file provided by "CLBLast" with any of the following names: CLBLastConfig.cmake clblast-config.cmake Add the installation prefix of "CLBLast" to CMAKE_PREFIX_PATH or set "CLBLast_DIR" to a directory containing one of the above files. If "CLBLast" provides a separate development package or SDK, be sure it has been installed. *** libclblast-dev ships /usr/lib/x86_64-linux-gnu/cmake/CLBLast/CLBlastConfig.cmake Notice that there's both "CLBLast" and "CLBlast" in there! I'll investigate. Best, Gard
Bug#949767: arrayfire update fails in configure step
Hi Aaron, On Tue, Apr 27, 2021 at 08:14:10PM -0400, Aaron M. Ucko wrote: > Please try adding a build dependency on libclfft-dev and replacing > src/backend/opencl/CMakeLists.txt's inclusion of build_clFFT with a call > to > > find_package(clFFT) > > > Thanks a lot for your initial hint Thanks again. I now tried to learn from this and added a similar patch for CLBLast[1] but as you can see in the new log[2] it is not that simple. I tried to compare the content of libclfft-dev_2.12.2-3.1_amd64.deb and libclblast-dev_1.5.2-1_amd64.deb how the cmake files under /usr/lib/x86_64-linux-gnu/cmake/ are looking like and I need to admit I have no idea why this fails. Kind regards Andreas. [1] https://salsa.debian.org/science-team/arrayfire/-/blob/master/debian/patches/use_debian_packaged_libs.patch#L64 [2] https://salsa.debian.org/science-team/arrayfire/-/jobs/1611074#L1602 -- http://fam-tille.de
Bug#949767: arrayfire update fails in configure step
Andreas Tille writes: > https://salsa.debian.org/science-team/arrayfire/-/jobs/1608881 It looks like you're down to two real errors: CMake Error: File /builds/science-team/arrayfire/debian/output/source_dir/extern/forge/CMakeModules/version.h.in does not exist. CMake Error at CMakeModules/AFconfigure_forge_submodule.cmake:47 (configure_file): configure_file Problem configuring file Please try commenting out the configure_file call at the end of CMakeModules/AFconfigure_forge_submodule.cmake. CMake Error at /usr/share/cmake-3.18/Modules/ExternalProject.cmake:2350 (message): error: could not find git for clone of clFFT-ext Call Stack (most recent call first): /usr/share/cmake-3.18/Modules/ExternalProject.cmake:3206 (_ep_add_download_command) CMakeModules/build_clFFT.cmake:33 (ExternalProject_Add) src/backend/opencl/CMakeLists.txt:15 (include) Please try adding a build dependency on libclfft-dev and replacing src/backend/opencl/CMakeLists.txt's inclusion of build_clFFT with a call to find_package(clFFT) > Thanks a lot for your initial hint No problem. -- Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org) http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?a...@monk.mit.edu
Bug#949767: arrayfire update fails in configure step
Hi Aaron, On Mon, Apr 26, 2021 at 08:30:39AM -0400, Aaron M. Ucko wrote: > Andreas Tille writes: > > > /usr/bin/ld: cannot find -lpthreads > > Thanks for posting a link to the full log! AFAICT, the actual errors > appear much earlier, on lines 1573-1593: > > CMake Error: File > /builds/science-team/arrayfire/debian/output/source_dir/extern/forge/CMakeModules/version.h.in > does not exist. > CMake Error at CMakeModules/AFconfigure_forge_submodule.cmake:47 > (configure_file): > configure_file Problem configuring file > Call Stack (most recent call first): > CMakeLists.txt:117 (include) > CMake Error at CMakeLists.txt:163 (add_subdirectory): > add_subdirectory given source "extern/spdlog" which is not an existing > directory. > CMake Error at CMakeLists.txt:164 (add_subdirectory): > add_subdirectory given source "extern/glad" which is not an existing > directory. > -- Performing Test has_ignored_attributes_flag > -- Performing Test has_ignored_attributes_flag - Success > -- Performing Test has_all_warnings_flag > -- Performing Test has_all_warnings_flag - Success > CMake Error at /usr/share/cmake-3.18/Modules/ExternalProject.cmake:2350 > (message): > error: could not find git for clone of clFFT-ext > Call Stack (most recent call first): > /usr/share/cmake-3.18/Modules/ExternalProject.cmake:3206 > (_ep_add_download_command) > CMakeModules/build_clFFT.cmake:33 (ExternalProject_Add) > src/backend/opencl/CMakeLists.txt:15 (include) > > The subsequent output consists of dumps of CMake's internal logs, which > sometimes provide additional clues but need to be taken in context; for > instance, the -lpthreads error comes from A, that hint brough me a bit further. Unfortunately the configure issue is not solved and I take the freedom to point again to the build log in salsa-ci: https://salsa.debian.org/science-team/arrayfire/-/jobs/1608881 I have no good idea how to continue from here. Thanks a lot for your initial hint Andreas. -- http://fam-tille.de
Bug#949767: arrayfire update fails in configure step
Andreas Tille writes: > /usr/bin/ld: cannot find -lpthreads Thanks for posting a link to the full log! AFAICT, the actual errors appear much earlier, on lines 1573-1593: CMake Error: File /builds/science-team/arrayfire/debian/output/source_dir/extern/forge/CMakeModules/version.h.in does not exist. CMake Error at CMakeModules/AFconfigure_forge_submodule.cmake:47 (configure_file): configure_file Problem configuring file Call Stack (most recent call first): CMakeLists.txt:117 (include) CMake Error at CMakeLists.txt:163 (add_subdirectory): add_subdirectory given source "extern/spdlog" which is not an existing directory. CMake Error at CMakeLists.txt:164 (add_subdirectory): add_subdirectory given source "extern/glad" which is not an existing directory. -- Performing Test has_ignored_attributes_flag -- Performing Test has_ignored_attributes_flag - Success -- Performing Test has_all_warnings_flag -- Performing Test has_all_warnings_flag - Success CMake Error at /usr/share/cmake-3.18/Modules/ExternalProject.cmake:2350 (message): error: could not find git for clone of clFFT-ext Call Stack (most recent call first): /usr/share/cmake-3.18/Modules/ExternalProject.cmake:3206 (_ep_add_download_command) CMakeModules/build_clFFT.cmake:33 (ExternalProject_Add) src/backend/opencl/CMakeLists.txt:15 (include) The subsequent output consists of dumps of CMake's internal logs, which sometimes provide additional clues but need to be taken in context; for instance, the -lpthreads error comes from -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE (ll. 1472-1480). -- Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org) http://www.mit.edu/~amu/ | http://stuff.mit.edu/cgi/finger/?a...@monk.mit.edu
Bug#949767: arrayfire update fails in configure step
Andreas Tille writes: > Hi, > > I personally have no interest in arrayfire but I realised that the > Debian packaged version depends clblas (and is the only remaining > package that needs cblas and I would like to see it removed from Debian > due to bug #949767) Hi, FWIW: It seems that arrayfire (which I know nothing about in general) has support [1,2] for using clblast (with a t) as an alternative to clblas. We do have a clblast package [3]. Could that be a way forward? [1] https://github.com/arrayfire/arrayfire/pull/1727 [2] https://github.com/arrayfire/arrayfire/issues/1956 [3] https://tracker.debian.org/pkg/clblast -- Gard signature.asc Description: PGP signature
Bug#949767: arrayfire update fails in configure step
Hi, I personally have no interest in arrayfire but I realised that the Debian packaged version depends clblas (and is the only remaining package that needs cblas and I would like to see it removed from Debian due to bug #949767) Thus I tried to upgrade arrayfire to the latest upstream version in Git but unfortunately it fails with: ... /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_d9514.dir/link.txt --verbose=1 /usr/lib/ccache/cc -g -O2 -ffile-prefix-map=/builds/science-team/arrayfire/debian/output/source_dir=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -Wdate-time -D_FORTIFY_SOURCE=2 -DCHECK_FUNCTION_EXISTS=pthread_create -Wl,-z,relro -Wl,-z,now CMakeFiles/cmTC_d9514.dir/CheckFunctionExists.c.o -o cmTC_d9514 -lpthreads /usr/bin/ld: cannot find -lpthreads Since I have switched on salsa-ci you can see the full build log[1] in salsa. Any help to build the package successfully would be welcome. Kind regards Andreas. [1] https://salsa.debian.org/science-team/arrayfire/-/pipelines/249962 -- http://fam-tille.de