MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Компилиране на MongoDB C++ драйвер на Cygwin

Функцията srandomdev е достъпна в stdlib.h на BSD или OSX системи, не на GNU системи като Cygwin или Linux.

Изглежда, че скриптът за компилация не разпознава факта, че работите на Cygwin. Има няколко опции, които можете да опитате. Най-лесните са

Промяна на клаузата ifdef

Без машина с Windows, на която да тествате това, е трудно да се потвърди, че това ще работи за вас. В src/mongo/platform/random.cpp , редактирайте ред 108

#elif defined(__linux__) || defined(__sunos__) || defined(__APPLE__)

да бъде

#elif defined(__linux__) || defined(__sunos__) || defined(__APPLE__) || defined(__CYGWIN__)

Изтрийте последната клауза else

Намерете реда (141 в моята версия) на src/mongo/platform/random.cpp това изглежда като

#else
class SRandSecureRandom : public SecureRandom {
public:

Изтрийте редовете до #endif клауза и след това редактирайте

#elif defined(__linux__) || defined(__sunos__) || defined(__APPLE__)

просто да бъда

#else



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Използвайте низова променлива в LINQ ламбда израз

  2. MongoDB и Robomongo:Не мога да се свържа (удостоверяване)

  3. Искам да извлека стойности, вмъкнати на определена дата, използвайки _id на mongodb

  4. Как да индексирам множество уникални полета с данни в един документ в Mongoose?

  5. BasicBSONList може да работи само с цифрови клавиши, а не:[_id]