Bazel создать общую библиотеку C ++ с SonameC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Bazel создать общую библиотеку C ++ с Soname

Сообщение Anonymous »

Я хотел бы создать библиотеку c ++ с Bazel с использованием soname .

с cmake < /code> я мог бы установить свойства, такие как: < /p>

set_target_properties(my-library
PROPERTIES
SOVERSION 3
VERSION 3.2.0
)
< /code>

, который затем генерирует < /p>

libmy-library.so -> libmy-library.so.3
libmy-library.so.3 -> libmy-library.so.3.2.0
libmy-library.so.3.2.0
< /code>

Однако в документации Bazel < /code> я не могу найти ничего, что позволило бы мне сделать это легко. Я знаю, что могу напрямую определить Soname и версию и передать несколько Linkopts < /code> в файле сборки: < /p>

cc_binary(
name = "libmy-library.so.3.2.0",
srcs = ["my-library.cpp", "my-library.h"],
linkshared = 1,
linkopts = ["-Wl,-soname,libmy-library.so.3"],
)
< /code>

, который производит libmy-library.so.3.2.0 < /strong> с правильным Soname, но не файл. Весь много взломов вокруг: < /p>


Создать libmy-library.so.3 symlink < /li>
Создать libmy-library.so Symlink < /li>
Создайте некоторые правила импорта, чтобы я мог создавать двоичные файлы, которые связываются с этой библиотекой. < /li>
< /ul>
< Br /> Это не похоже на правильный путь. Что будет правильным способом решить такую ​​проблему?

Подробнее здесь: https://stackoverflow.com/questions/535 ... ith-soname
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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