Вы получили эту ошибку, потому что один или оба драйвера C и C ++ были настроены без поддержки SSL.В сборке драйвера C ++ по умолчанию используется поддержка SSL (ищите опцию MONGOCXX_ENABLE_SSL
CMake).Таким образом, наиболее вероятное объяснение состоит в том, что лежащий в основе драйвер C был создан без SSL, а второе наиболее вероятное объяснение состоит в том, что драйвер C действительно имеет встроенную поддержку SSL, но он был явно отключен при сборке драйвера C ++.Вы можете проверить состояние драйвера C, посмотрев значение MONGOC_ENABLE_SSL
в заголовках драйверов C.Если он включен, он должен выглядеть следующим образом:
$ find /usr/local/Cellar/mongo-c-driver/1.14.0/include -type f -name "*.h" | xargs grep 'MONGOC_ENABLE_SSL '
/usr/local/Cellar/mongo-c-driver/1.14.0/include/libmongoc-1.0/mongoc/mongoc-config.h: * MONGOC_ENABLE_SSL is set from configure to determine if we are
/usr/local/Cellar/mongo-c-driver/1.14.0/include/libmongoc-1.0/mongoc/mongoc-config.h:#define MONGOC_ENABLE_SSL 1
/usr/local/Cellar/mongo-c-driver/1.14.0/include/libmongoc-1.0/mongoc/mongoc-config.h:#if MONGOC_ENABLE_SSL != 1
Конечно, вы должны заменить путь к каталогу include, указанному выше, на фактическое местоположение, в котором установлен драйвер C.
Если вы видите там что-то отличное от #define MONGOC_ENABLE_SSL 1
, то в вашем драйвере C не включена поддержка SSL, и вам нужно будет перестроить его, чтобы оно имело.