Я запускаю bazel build
в проекте, который состоит из подмодулей git со следующей структурой:
/work/
├── tensorflow/ [git submodule]
└── train/
└── DeepSpeech/ [git submodule]
└── native_client/
Команда сборки выглядит следующим образом:
bazel build \
--config=monolithic \
-c opt \
--copt=-O3 \
--copt="-D_GLIBCXX_USE_CXX11_ABI=0" \
--copt=-fvisibility=hidden \
//native_client:libdeepspeech.so \
//native_client:generate_trie
и я получаю следующую ошибку:
ERROR: /work/tensorflow/native_client/BUILD:6:1: Executing genrule //native_client:ds_git_version failed (Exit 1)
realpath: /work/train/DeepSpeech/native_client/../.git/: Not a directory
Кажется, что жалуется, что /work/train/DeepSpeech/.git
не является каталогом, и это будет правильно, потому что /work/train/DeepSpeech/.git
- это файл, содержащий путьк дереву git подмодуля git.
Вот содержимое /work/train/DeepSpeech/.git
:
gitdir: ../../.git/modules/train/DeepSpeech
Мой вопрос: есть ли способ заставить базель уважать структуру подмодулямой репозиторий?В идеале, в моей команде bazel build
должны быть какие-то флаги, которые заставят ее волшебным образом работать, но я открыт для других опций.
Спасибо за вашу помощь!