0
我正在使用python CFFI來構建一個名爲libfpta的外部庫,我想將它放在我的python repo(myrepo/lib/libfpta.so)中,從而分發與python代碼一起。第一件好事是包裝器表示爲共享對象(_amnesia.so)實際上是生成的,但爲了甚至導入它,我必須正確設置LD_LIBRARY_PATH。 換句話說CFFI如何避免手動設置LD_LIBRARY_PATH
(venv) [email protected]:~/workspace/amnesia $ ldd _amnesia.so
linux-vdso.so.1 => (0x00007ffeb506f000)
libfpta.so => not found # path to actual code is not set
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fed7910b000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fed78d41000)
/lib64/ld-linux-x86-64.so.2 (0x0000563c4cac8000)
我一直在試圖通過設置
extra_link_args=['-Wl,-rpath=./lib/libfpta.so'],
我set_source聲明中解決這個問題,建議there,通過它沒有工作。