-
Notifications
You must be signed in to change notification settings - Fork 49
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
building in-tree from source error: Could not find FOUND_VCS #130
Comments
more context, building with the following sources: Compiler used: |
bump - same issue still existing using v0.19 |
Further investigating, the following code is being called, using LLVM v14.0.5 if falls under the
But I'm not using git or svn controled sources but rather downloading latest I'll try to use a git clone of |
I've made a few experimental builds and found out that call to The only issue I see in above example is the missing
Even downloaded @th0ma7, could you please provide the exact sequence of commands you use and the build log? |
To put a bit more context, this is a cross-compilation using Synology Linux toolchain, built from a debian 12 container. This is done using the Synocommunity build framework available at https://github.com/SynoCommunity/spksrc When adding vc-intrinsics details within my intel-opencl-clang-140 in-tree build makefile:
Note that the build process creates a It ends-up failing at configure time with:
Adding the following solves things for me:
I've added a commit on my current PR that shows the additions being made for that to work: SynoCommunity/spksrc@30c51b0 |
Now I recall, something else is also missing when built in-tree, the
I had opened-up another issue intel/intel-graphics-compiler#334 (comment) relatively to IGC where vc-intrinsics becomes one of the issue in the grand shceme of things due to the missing EDIT: Also looked at the the full build logs (which built succesfully locally, not yet trigered thru github-action) and there is absolutely nothing related to |
@mshelego have i provided you with enough information? |
@th0ma7 could you also provide the full log of the build where |
Here you go! full log file when built in-tree to llvm along side with intel-opencl-clang-140 + resulting EDIT: As well my auto-generated toolchain file for cross-compiling (renamed .txt for upload): Let me know if you need anything else! EDIT2: Additional info, I tested with cmake instead of ninja and both issues still hapens, no change. |
@th0ma7 I've looked into your build log and downloaded all the sources
Unpacked them and made symbolic links so that the directory structure looks like this
And ran this cmake command
It finished without any errors
I think I need to build spksrc then, so could you please share the revision and steps to reproduce the issue? |
Thnx for taking the time to figure this out. The howto is pretty much here: https://github.com/SynoCommunity/spksrc
From your testing above, what is missing is the use of a toolchain file enforcing cross-compiling against the synology linux toolchain. As things worked out ok in your testing, I believe then its related to the cross-compiling portion that it may misbehave? I'm also available thru discord if you need further assistance. |
@mshelego for your awareness, I've been cleaning-up my PR over the week-end and realigned intel-opencl-compiler-140 build to use llvm-project sources like I must do with IGC instead of individual lld|clang|llvm|libunwind. The two issues still remains though. |
@th0ma7 I've managed to setup As you suggested earlier it's caused by the toolchain file.
which limit Commenting the Fortunately
|
Wow, great catch @mshelego 🚀 I recall doing the work behind cmake cross-compiling for the spksrc framework a while ago, couldn't tell what was the case where I ended-up adding
So if I get this right, this is something you intend to add in vc-intrinsics cmake definition directly (i.e. for a subsequent release)? Still I'll investigate further on my end if I can confirm what this was for. Also, where you able to reproduce the lack of |
@th0ma7 the both build issues should be fixed in the latest release. Please verify |
Also remove vc-intrinsics build fix as issue now solved with new version 0.20.0 with ref. PR intel/vc-intrinsics#130
Both issues are now fixed, thnx a lot for your time! |
* opencl-clang: Build using version LLVM 14.x needed for IGC * llvm-140: Include relevant IGC necessary patches * SPIRV-LLVM-Translator-140: update digests - TODO: move to git hash * ocl: Use specific git hash as no -140 release available * SPIRV-LLVM-Translator-140.src: Newly available release of -140 sources * ocl: Disable INSTALL_TOOLCHAIN_ONLY for libopencl-clang.so.14 * IGC: Configure now wokr sucessfully * IGC: Requires building lld and sources to libunwind from LLVM * IGC: Requires intel-vc-intrinsics sources * vc-intrinsics: Update to v0.19 and disable extract hash commit * vc-intrinsics: Update patch to remove unecessary include * vc-intrinsics: Move from in-tree to external to llvm build * vc-intrinsics: Remove llvm in-tree source files * intel-opencl-clang-140: Include base PLIST (needs cleaning-up) * libdrm: Update from version 2.4.121 to 2.4.122 * intel-gmmlib: Update from version 22.3.20 to 22.4.1 * libva: Update from version 2.21.0 to 2.22.0 * level-zero: Update from version 1.17.6 to 1.17.19 * intel-media-driver-latest: Update to 24Q2 version 24.1.5 to 24.2.5 * intel-opencl-clang-140: Only libopencl-clang.so.14 is required * intel-opencl-clang: Enable shared libraries It hapens that later-on IGC builds-up a compile-time tool called CMCLTranslatorTool which isn't built for 'NATIVE' and rather requires enforcing loading libLLVMGenXIntrinsics.so from intel-vc-intrinsincs. In turn, when built "static" (default mode), libLLVMGenXIntrinsics.so ends-up containing llvm libraries as well, which in turns CMCLTranslatorTool also contain, leading to a duplicate existance of similar calls, thus segfaulting core-dump. Note that loading build resulting libraries for this CMCLTranslatorTool really is an ugly hack that can only work for x86_64 built on x86_64 with compatible C libraries. * intel-opencl-clang-140: Include LLVM and clang shared libraries * opencl-clang-140: Include in-tree build of vc-intrinsics * SPIRV-Tools: Removing unecessary comments and options * intel-opencl-clang-140: include vc-intrinsics to PLIST + comments * intel-opencl-clang-140: Remove unused PREFERRED_LLVM_VERSION var * intel-opencl-clang-140: Remove duplicate -DLLVM_ENABLE_ZLIB * IGC: Configure successful * IGC: configure 100%, build 93%, sigh, getting there * IGC: It finally builds! Now let's clean this up. * IGC: Clean-up makefile * llvm-project-140.src: Include LLVM 14.0.5 with ocl + IGC patches * SPIRV-LLVM-Translator: Update from version 14.0.2 to 14.0.3 * llvm-14.0-build: Add a corresponding LLVM 14.0.5 native build * ffmpeg6: Enable OpenCL (and vulkan being autodetected) * intel-opencl-clang-140: Add vc-intrinsics library * intel-opencl-clang-140.src: Add sources only (to be merge with build later) * level-zero: Remove as duplicate of intel-level-zero * intel-opencl-clang-140: Use llvm-projet sources & Khronos headers * Khronos*: Rename all khronos sources using 'Khronos-*' prefix * clang|lld|llvm|libunwind: Migrate to using llvm-project sources * Khronos-SPIRV-Headers.src: Now only using cmake installed version * SPIRV-Tools: Update from version 2024.1 to 2024.2 * intel-opencl-clang-140: Remove PLIST-llvm as of no use * intel-vc-intrinsics.src: No PLIST needed as source install only * intel-graphics-compiler: Clean-ups and re-organize info * intel-compute-runtime: First iteration, configure's ok, build fails * IGC: Update to v1.0.17384.12 + other enablements - Update from 1.0.17384.11 to 1.0.17384.12 - Enable -DINSTALL_GENX_IR='ON' - Enable -DIGC_OPTION__LINK_KHRONOS_SPIRV_TRANSLATOR='ON' * intel-compute-runtime: Small updates + cmake debug mode ready * level-zero: Update from 1.17.19 to 1.17.28 * IGC: Multiple changes - Remove external dependencies (zlib, ncursesw, libxml2) - Remove commented shared library options (fails to build) - Enforce SPIRV-Headers source directory path - Added extra comments for using SPIRV-Tools as source * intel-compute-runtime: Bump to 24.31.30508.7 and fix IGC_DIR * intel-compute-runtime: Fix installation of OpenCL/vendors/intel.icd * intel-graphics-compiler + intel-compute-runtime: Set min DSM 7.1 * ocl-icd: Install generc OpenCL loader (version 2.3.2) * intel-compute-runtime: Comments clean-up * ffmpeg6: Revert to libmfx and enable OpenCL * synocli-videodriver: Prepare division of videodrv from ffmpeg * clinfo: Include utility to get OpenCL information (v3.0.23.01.25) * ocl-icd: Ensure OpenCL/layers|vendors is under INSTALL_PREFIX * intel-compute-runtime: Use DESTDIR for OpenCL/vendors/intel.icd * IGC: Migrate to using pre-built native/llvm-14.0 * libvpl-tools: Update from version 1.0.0 to 1.2.0 * libvpl: Update from version 2.11.0 to 2.13.0 * synocli-videodriver: Fixes for DSM6 build * synocli-videodriver: Build fixes to ocl-icd and intel-libvpl-tools * ffmpeg5-6: Migrate to using spksrc.videodriver.mk re-using drivers * github-action: synocli-videodriver is now built first for ffmpeg56 * github-action: Fix typo that still refered to python * ffmpeg5-6: Fix build using spksrc.videodriver.mk * ffmpeg56: Add SPK_DEPENDS and adjust changelog * vc-intrinsics: Update from version 0.19.0 to 0.20.0 * intel-opencl-clang-140: Align with IGC for static build Also remove vc-intrinsics build fix as issue now solved with new version 0.20.0 with ref. PR intel/vc-intrinsics#130 * intel-level-zero: Update from 1.17.28 to 1.17.42 * intel-gmmlib-latest: Update from 22.4.1 to 22.5.2 * intel-graphics-compiler: Update from 1.0.17384.12 to 1.0.17537.20 * cmake: Disable developer warnings (equivalent of -Wno-dev) * extract.mk: Allow extra parameter to tar extract commands * Add a new GCC_NO_DEBUG_INFO disabling symbols at build-time This remove debug symbols at build time reducing binary size significantly + reducing total compile+link time. Also, when set this enforces a "clean" of the current source directory (i.e. build for cmake/meson/ninja) to drop post-build total storage space used. It is hoped that it will allow compiling intel-graphics-compiler (IGC) using github-action which currently uses way to much space. * intel-compute-runtime: Do not enable GCC_NO_DEBUG_INFO has failing * intel-mediasdk: Not enable GCC_NO_DEBUG_INFO for ffmpeg --enable-mfx * ffmpeg.mk: Add new ffmpeg build functionality * videodriver.mk: Fix * tvheadend: Update to new version & migrate to new ffmpeg.mk * ffmpeg56: Update changelog on to using new synocli-videodriver * comskip: Migrate to using new ffmpeg.mk * chromaprint: Migrate to ffmpeg6 * github-action: Fix for new ffmpeg.mk
TL;DR
Two issues found when built in-tree:
lib/cmake/VCIntrinsics14/VCIntrinsics14Config*.cmake
files missing (while being installed out-of-tree), see building in-tree from source error: Could not find FOUND_VCS #130 (comment)Details
Looking into enabling opencl with SynoCommunity ffmpeg for x86_64 arch.
Related PR: SynoCommunity/spksrc#6148 (IGC, intel-clang-opencl and al not yet included in PR, pending this issue)
Note: the following below without
vc-intrinsics
it does configure & build properly.Building wiht
vc-intrinsics
in-tree from source with the following:And getting the following configuration error (present with version
0.18.0
, also tested much older0.3.0
, same issue):The text was updated successfully, but these errors were encountered: