-
-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
conda packaging for holoscan latest version (3.x) #28598
base: main
Are you sure you want to change the base?
Changes from 10 commits
620cf20
e96cce5
4feb1a1
937bfdb
c50ca66
0a64294
6acc840
7504e6c
90f6a0b
2a4e1c2
825fb1a
b54e588
0f10a50
d7d8a3c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
#!/bin/bash | ||
|
||
set -e | ||
set -x | ||
|
||
check-glibc bin/* lib/* lib/ucx/* lib/gxf_extensions/* | ||
find python/ -name "*.so*" | xargs -I"{}" check-glibc "{}" | ||
|
||
cp -rv bin $PREFIX/ | ||
cp -rv examples $PREFIX/ | ||
cp -rv lib $PREFIX/ | ||
cp -rv include $PREFIX/ | ||
cp -rv python $PREFIX/ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why are the pythons unpacked here instead of into site-package? |
||
|
||
echo $SP_DIR | ||
|
||
# Create the site-packages dir if it doesn't exist | ||
mkdir -p $SP_DIR | ||
|
||
# Add a .pth file that references extra directory needed by holoscan | ||
echo "$PREFIX/python/lib" > $SP_DIR/holoscan_extra.pth |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
#!/bin/bash | ||
|
||
set -ex | ||
|
||
[[ ${target_platform} == "linux-64" ]] && targetsDir="targets/x86_64-linux" | ||
# https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html?highlight=tegra#cross-compilation | ||
[[ ${target_platform} == "linux-aarch64" && ${arm_variant_type} == "sbsa" ]] && targetsDir="targets/sbsa-linux" | ||
[[ ${target_platform} == "linux-aarch64" && ${arm_variant_type} == "tegra" ]] && targetsDir="targets/aarch64-linux" | ||
|
||
if [ -z "${targetsDir+x}" ]; then | ||
echo "target_platform: ${target_platform} is unknown! targetsDir must be defined!" >&2 | ||
exit 1 | ||
fi | ||
|
||
# E.g. $CONDA_PREFIX/libexec/gcc/x86_64-conda-linux-gnu/13.3.0/cc1plus | ||
find $CONDA_PREFIX -name cc1plus | ||
|
||
GCC_DIR=$(dirname $(find $CONDA_PREFIX -name cc1plus)) | ||
|
||
export PATH=${GCC_DIR}:$PATH | ||
export LD_LIBRARY_PATH=${GCC_DIR}:$LD_LIBRARY_PATH | ||
|
||
# No need for use-linker-plugin optimization, causes compile failure, don't use it for the test | ||
export CXXFLAGS="${CXXFLAGS} -fno-use-linker-plugin" | ||
|
||
echo CC = $CC | ||
echo CXX = $CXX | ||
|
||
cmake -S $PREFIX/examples \ | ||
-DCMAKE_LIBRARY_PATH=${GCC_DIR} \ | ||
-DCMAKE_C_COMPILER=$CC \ | ||
-DCMAKE_CXX_COMPILER=$CXX \ | ||
-DCUDAToolkit_INCLUDE_DIRECTORIES="$PREFIX/include;$PREFIX/${targetsDir}/include" \ | ||
-DCMAKE_PREFIX_PATH=$CONDA_PREFIX \ | ||
-DCMAKE_CUDA_COMPILER=$PREFIX/bin/nvcc \ | ||
-DCUDAToolkit_ROOT=$PREFIX | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Did you try using $CMAKE_ARGS instead of manually setting all of these variables? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also, this test takes a long time to build all the examples. Something shorter like
might be more appropriate. |
||
|
||
cmake --build . |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
c_stdlib_version: # [linux] | ||
- 2.34 # [linux] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are we unpacking a redist instead of building from source when the source is available?
https://github.com/nvidia-holoscan/holoscan-sdk
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see that we already discussed this above back in December 2024.
Have you opened issues on the feedstocks for these packages asking for the relevant libraries?