Проблема в том, что я не был подключен к сети, поэтому Google Фото не удалось получить выбранное изображение. См. Мой ответ на @ adityakamble49.
Лучшее решение, исполняемый файл runfiles работает, но bazel run program
не может динамически загружать библиотеки.
1) Группируйте совместно используемые библиотеки и файлы данных вместе:
filegroup(
name = "libs_and_data",
# This creates *.runfiles/.../path/to/data/files, for runpath
data =glob(["*.so*"]) + glob(["*.xml"]),
)
2) Вручную собирайте и связывайте совместно используемые библиотеки из их исходной папки, 3) Вручную установите путь к каталогу зависимости данных runfiles, который содержит общие библиотеки и файлы данных.
cc_library(
name = "lib",
data = [
# Shared objects are data, not library deps, to avoid _solib in RUNPATH
"//path/to/libs_and_data",
],
linkopts = [
# Explicit build-linking of libraries, because we are avoiding cc_library()
"-lLibrary1",
"-lLibrary2",
"-Lpath/to/libs",
# Point dynamic loader to runfiles location of libraries and datafiles
# Only the *.runfiles executable will successfully load libraries
"-Wl,-rpath='../../../path/to/libs'",
],
deps = [
"//path/to/headers",
],
)