Solution to issue cannot be found in the documentation.
[X] I checked the documentation.
Issue
When building a Conda package that links against onnxruntime-cpp and installing it later, it will NOT install onnxruntime-cpp due to the run export setting being missing.
I also noticed, that the version pinning has different requirements depending on the platform:
Windows: output library files are bin/onnxruntime_conda.dll and lib/onnxruntime_conda.lib.
run export {{ pin_subpackage('onnxruntime-cpp', max_pin='x') }} is sufficient
Linux: output library files are lib/libonnxruntime.so.1.16.0 and lib/libonnxruntime.so. The latter file is a copy of the former file and not a symlink.
run export {{ pin_subpackage('onnxruntime-cpp', max_pin='x.x.x') }} is required
Reason: The internal SONAME refers to libonnxruntime.so.1.16.0 in both files. This causes the linker to use the .so.1.16.0 files, even if you explicitly link to the version-less .so file.
Solution to issue cannot be found in the documentation.
Issue
When building a Conda package that links against
onnxruntime-cpp
and installing it later, it will NOT installonnxruntime-cpp
due to the run export setting being missing.I also noticed, that the version pinning has different requirements depending on the platform:
bin/onnxruntime_conda.dll
andlib/onnxruntime_conda.lib
.{{ pin_subpackage('onnxruntime-cpp', max_pin='x') }}
is sufficientlib/libonnxruntime.so.1.16.0
andlib/libonnxruntime.so
. The latter file is a copy of the former file and not a symlink.{{ pin_subpackage('onnxruntime-cpp', max_pin='x.x.x') }}
is requiredlibonnxruntime.so.1.16.0
in both files. This causes the linker to use the.so.1.16.0
files, even if you explicitly link to the version-less.so
file.Installed packages
Environment info