Каковы различные библиотеки Eclipse Paho C - PullRequest
0 голосов
/ 16 октября 2018

Я искал ответ на этот вопрос, но до сих пор дошел до конца.

Я строю библиотеки Eclipse Paho C и C ++.Я следовал инструкциям по созданию библиотеки C с использованием CMake.Поскольку я не хочу распространять разделяемые библиотеки на наши целевые машины, я собираюсь статически связать, поэтому я добавил для этого флаги.

cmake -DPAHO_WITH_SSL=TRUE -DPAHO_BUILD_DOCUMENTATION=TRUE -DPAHO_BUILD_STATIC=TRUE ../paho.mqtt.c
make

Это создает разделяемые библиотеки, а также четыре статические библиотеки.:

./src/libpaho-mqtt3cs-static.a
./src/libpaho-mqtt3a-static.a
./src/libpaho-mqtt3c-static.a
./src/libpaho-mqtt3as-static.a

Содержимое, по-видимому, является одним и тем же списком файлов, но их длина различна, поэтому я предполагаю, что они скомпилированы с различными параметрами.Ясно, что можно связать только одну библиотеку, но я не уверен, в чем различия, поэтому я не уверен, какую из них использовать.

Я предполагаю, что комбинации:

  • Синхронный против Асинхронный
  • SSL против без SSL?

Если эти предположения верны, то, возможно, a против c асинхронный против синхронизации (не уверенпочему ac, но что угодно), и те, которые заканчиваются на sa, являются версиями SSL.Но я только догадываюсь.

Кто-то точно знает?

1 Ответ

0 голосов
/ 17 октября 2018

Хорошо, я нашел свой ответ.Это от README от загрузки предварительно собранных двоичных файлов Darwin.Я не нашел его в других readmes.

  • libmqttv3a.so - асинхронный
  • libmqttv3as.so - асинхронный с SSL
  • libmqttv3c.so - "classic"/ synchronous
  • libmqttv3cs.so -" classic "/ синхронно с SSL

Так что мои догадки были правильными.

...