看来一下 OP 的需求,改为 '/usr/local/aom/3.6.0/lib/libaom.3.dylib' ,这个路径不太符合 unix 规范。
用 rpath 的目的就是为了无论是放在 /usr, /usr/local 还是 /opt 中,都不需要使用 LD_LIBRARY_PATH 。但是你需要按照文件夹规范来放
一般情况下,你放在 /usr/local 中应该直接展开,不带包 aom/3.6.0 这个东西,看起来应该是这样:
```
/usr/local/lib/libheif
/usr/local/lib/libaom
...
```
如果是单独的 fat 包,举个例子比如 java 吧,放在 /opt 当中,尽可能的把依赖打进去,看起来是这样的
```
/opt/jdk-17.0.1/bin/jar
/opt/jdk-17.0.1/lib/
libjli.so......
```
只要运行 `objdump -x jar | grep 'R.*PATH'`,就可以看到输出
```
RUNPATH $ORIGIN:$ORIGIN/../lib
```
只要你的目录符合 unix 规范,无论你是独立的放在 /opt/xxx 当中,还是展开放到 /usr 当中,都是没问题的