Описание тега bazel-cpp

1 ответ

Как мне включить `cc_binary`/`cc_library` в настраиваемое правило (не макрос!)?

Чтобы обойти ошибку и установить параметры компилятора для конкретной платформы, я хочу заключить (и) в настраиваемое правило. Я не хочу использовать макрос, потому что тогда мне пришлось бы так структурировать свой код: deps = select( { "@platforms…
20 дек '21 в 13:58
1 ответ

Bazel: Как сделать так, чтобы цель new_local_repository зависела от цели, сгенерированной http_archive?

У меня есть несколько сторонних библиотек, которые зависят от , поэтому я извлекаю и собираю openssl через механику репозитория ( http_archive()). И у меня есть GRPC, который извлекает boringssl который имеет те же символы, что и openssl (после связ…
19 янв '22 в 11:42
0 ответов

Как динамически связываться только с некоторыми библиотеками с помощью bazel?

Есть определенные библиотеки, такие как gflags, которые имеют глобальное состояние. Я нахожусь в ситуации, когда основной исполняемый файл и динамически загружаемый плагин (.so) используют gflags. В обоих случаях bazel будет статически связывать gfl…
21 янв '22 в 01:49
1 ответ

bazel rules_foreign_cc - //:<target> зависит от @local_config_cc//:cc-compiler-k8 в репозитории @local_config_cc, который не удалось получить

Я абсолютный новичок в bazel. Я пытаюсь создать приложение на основе CMake, используя bazel через Общая информация: ОС: Ubuntu 20.04 LTS Версия Bazel: Пробовал как с 3.4.0, так и с 5.0.0. Версия CMake: 3.19.5 Моя структура каталогов выглядит так ROO…
23 фев '22 в 19:57
1 ответ

Как использовать сценарий оболочки, который генерирует выходные файлы перед последующими целями сборки Bazel

У меня есть несколько файлов protobuf, которые я создаю с помощью сценария оболочки, например: прото.ш #!/usr/bin/env bash rm -rf ./proto-out mkdir -p proto-out protoc -Iproto --cpp_out=./proto-out ./proto/*.proto Однако я не понимаю, что делать в м…
06 май '22 в 04:27
2 ответа

Как ссылаться на выходные заголовки bazel С++ protobuf в другом рабочем пространстве/пакете

Я только начал использовать Bazel пару дней назад в надежде на что-то лучшее, чем CMake. У меня есть небольшая библиотека, которая содержит только определения protobuf в собственном репозитории. Я получил bazel для создания прототипов и вижу их в ка…
1 ответ

Как добавить проект, отличный от Bazel, в качестве цели сборки для текущего проекта Bazel?

Фон: у меня есть библиотека только для заголовков C++, например: mpack mpack использует систему сборки cmake. Однако я хочу использовать некоторые из его функций в своем проекте (my_project), который использует систему сборки bazel. Я выполнял шаги …
15 мар '22 в 16:03
0 ответов

Включить заголовочный файл из стороннего пакета в код C++ в моем проекте

Я пытаюсь включить файл заголовка из стороннего пакета в код C++ в своем проекте. Вот как я это структурировал: main_repo/ - third_party/some_lib/ - BUILD - header_file.h - extensions/my_project/ - BUILD - my_app.cpp - my_app.hpp main_repo/extension…
18 янв '23 в 00:54
1 ответ

Извлечение флагов компилятора и компоновщика из Bazel

Мне нужно извлечь флаги компилятора и компоновщика для определенного приложения, созданного Bazel. Есть ли для этого специальная команда?
01 дек '22 в 16:18
1 ответ

Был указан путь включения, но по-прежнему не удалось включить заголовок в путь в проекте Bazel C++

У меня есть проекты с такой структурой каталогов ---root | |--src | |--project1 | |--model | | |--incude | | | |--model | | | |--modelA.hpp | | | |--modelB.hpp | | |--modelA.cpp | | |--modelB.cpp | | |--BUILD #1 | |... | |--view | |... | |--common |…
22 сен '22 в 13:37
1 ответ

Как я могу получить текущую дату в файле BUILD.bazel

Я новичок в bazel и столкнулся с проблемой, описанной ниже, при создании кода CPP с помощью bazel. Я хочу передать текущую дату как одно из локальных определений в формате ниже. date = <правило для получения текущей даты> cc_lib(..., local_def…
28 ноя '22 в 13:54
0 ответов

Как получить покрытие от Bazel, запустив программу вместо написания модульных тестов?

Мой проект построен Bazel. За исключением модульного теста для каждой отдельной функции, иногда требуется тестирование в некоторых сценах, таких как имитация пользовательского ввода в качестве тестирования черного ящика. Чтобы сцена тестирования был…
0 ответов

Как исправить «ld: предупреждение: -undefined dynamic_lookup может не работать с цепочками исправлений» в macOS M1?

Я всегда получаю предупреждение компоновщика ld: warning: -undefined dynamic_lookup may not work with chained fixups при создании моего проекта C++ с помощью Bazel. bazel clean && bazel test --config=macos //... Мой вопрос: как я могу исправ…
18 янв '23 в 19:30
1 ответ

Как я могу удалить первый каталог из пути включения в bazel?

У меня есть следующая структура проекта, которую я пытаюсь перенести в Bazel из другой системы сборки: MyProject/ ├─ WORKSPACE.bazel ├─ app/ │ ├─ BUILD.bazel │ ├─ main.cpp ├─ lib/ │ ├─ BUILD.bazel │ ├─ lib1/ │ │ ├─ lib1.hpp │ │ ├─ lib1.cpp │ ├─ lib2…
24 фев '23 в 04:33
1 ответ

Несколько версий внешнего репо в рабочей области

Поддерживает ли Bazel объединение нескольких версий внешней зависимости в одной рабочей области? Я бы предположил, что нет (аналогично cmake, 1 версия на проект/рабочее пространство), но все же стоит спросить? вариант использования, если в большом р…
01 сен '22 в 09:44
0 ответов

Файл шаблона заголовка Bazel C++ дает ошибку: неопределенная ссылка на

Возникли проблемы со связыванием заголовка шаблона при создании проекта с помощью Bazel. Ссылка работает для файла, но не для файла. Для класса BinaryTree нет другого файла, кроме файла . Получение следующей ошибки hello_test.pic.o:hello_test.cpp:fu…
06 сен '22 в 13:33
1 ответ

Bazel: ссылки на двоичные файлы из пакетов в пользовательском определении цепочки инструментов

Фон Я пытаюсь создать пользовательское определение цепочки инструментов, которое ссылается на двоичные файлы инструментов из загружаемого пакета. Кажется, что еслиtool_path.pathявляется относительным Bazel считает его относительным относительно того…
26 авг '22 в 17:46
1 ответ

Создание файлов C++ с помощью py_binary и genrule

У меня есть скрипт Python с именемblob_to_cpp.py(находится вscirpts/blob_to_cpp.pyотносительноWORKSPACE.bazelфайл). Сценарий Python принимает входной файл (например,weights/rt_alb.tza) и генерирует из него заголовок C++ (.h) и исходный файл (.cpp), …
08 фев '23 в 20:53
1 ответ

Как предоставить дополнительные флаги только родному компилятору cc?

В нашей проектной группе мы разрабатываем приложения для целевых микроконтроллеров с расширением . Для запуска нашего тестраннера мы компилируем с помощью собственного компилятора cc. В нашей проектной группе большинство используют ОС Linux, но неко…
25 сен '22 в 19:26
0 ответов

Проблемы в сборке Bazel при попытке интегрировать один репозиторий в качестве удаленного репо в другой репозиторий

У нас есть репозиторий, который использует сборку bazel. Структура папок такова, что remote_repo -> source -> BUILD мы добавили цель в файл BUILD, например //source:target (начинается из корневой папки). Это отлично работает, когда мы запускае…
23 дек '22 в 10:23