You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We use the 3.11 Python distribution via rules_python. Separately, we also import the OpenUSD package, also built against 3.11, into the same bazel workspace.
The OpenUSD libraries link against libpython3.11.dylib, and the relevant entry in the otool -L output reads:
@rpath/libpython3.11.dylib (compatibility version 3.11.0, current version 3.11.0)
But running otool -L on libpython3.11.dylib that comes from the distribution shows (in part):
Load command 4
cmd LC_ID_DYLIB
cmdsize 64
name /install/lib/libpython3.11.dylib (offset 24)
time stamp 1 Wed Dec 31 16:00:01 1969
current version 3.11.0
compatibility version 3.11.0
When we finally link an executable that uses one of the OpenUSD libraries, the linking succeeds, but the executable crashes at runtime with the following error:
dyld[9178]: Library not loaded: /install/lib/libpython3.11.dylib
Referenced from: <54AA2790-AF92-3913-94E7-BD6C9C103B58> /private/var/tmp/_bazel_rao/60d3fd1e3632f7ce1e366e4f3b86dd4e/execroot/rhea/bazel-out/darwin_arm64-fastbuild/bin/examples/hello_world/test_usd
Reason: tried: '/install/lib/libpython3.11.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/install/lib/libpython3.11.dylib' (no such file), '/install/lib/libpython3.11.dylib' (no such file)
Process 9178 stopped
* thread #1, stop reason = signal SIGABRT
frame #0: 0x0000000192e1873c dyld`__abort_with_payload + 8
dyld`__abort_with_payload:
-> 0x192e1873c <+8>: b.lo 0x192e1875c ; <+40>
0x192e18740 <+12>: pacibsp
0x192e18744 <+16>: stp x29, x30, [sp, #-0x10]!
0x192e18748 <+20>: mov x29, sp
I know I could fix this by running install_name_tool on libpython3.11.dylib, but it seems to me that a standalone portable distribution would already do that.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
We use the 3.11 Python distribution via rules_python. Separately, we also import the OpenUSD package, also built against 3.11, into the same bazel workspace.
The OpenUSD libraries link against
libpython3.11.dylib
, and the relevant entry in theotool -L
output reads:But running
otool -L
onlibpython3.11.dylib
that comes from the distribution shows (in part):When we finally link an executable that uses one of the OpenUSD libraries, the linking succeeds, but the executable crashes at runtime with the following error:
I know I could fix this by running
install_name_tool
onlibpython3.11.dylib
, but it seems to me that a standalone portable distribution would already do that.Perhaps I am thinking about this wrong?
Thanks in advance.
Beta Was this translation helpful? Give feedback.
All reactions