Go Cgo: Binary не находит общую библиотеку с RPath, работает только с ld_library_pathLinux

Anonymous
Go Cgo: Binary не находит общую библиотеку с RPath, работает только с ld_library_path

Сообщение Anonymous »

Я работаю над проектом Go, который ссылается на общую библиотеку () Использование CGO . Я хочу внедрить путь библиотеки в двоичный файл, используя rPath , чтобы он работал без необходимости установить LD_Library_path . Тем не менее, мой тест на тестирование только работает только тогда, когда я вручную устанавливаю LD_LIBRARY_PATH , но не сбои, когда полагается на RPATH один.
Это работает:

Код: Выделить всё

unit-test:
@(export LD_LIBRARY_PATH=${LIB_PATH}:${LD_LIBRARY_PATH}; \
CGO_LDFLAGS="-Wl,-rpath,${LIB_PATH} -L${LIB_PATH} -l" ${GOEXE} test -coverprofile=coverage.out ./...)
< /code>
Но следующее не < /p>
@CGO_LDFLAGS="-Wl,-rpath,${LIB_PATH} -L${LIB_PATH} -l"
${GOEXE} test -coverprofile=coverage.out ./...

Я пробовал это как на Ubuntu 22.04, так и в OpenSuse 15. Мне не хватает какой -либо конфигурации?
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/794 ... -ld-librar

Вернуться в «Linux»