epfml / sent2vec

General purpose unsupervised sentence representations
Other
1.19k stars 256 forks source link

Building failed using make in Windows 10 #114

Closed achrafOuk closed 2 years ago

achrafOuk commented 3 years ago

I I installed fastText on my machine but when I tried to build sent2vec in my pc I got this error:

c++ -pthread -std=c++0x -O3 -funroll-loops -c src/fasttext.cc
src/fasttext.cc: Dans la fonction membre ½ávoid fasttext::FastText::quantize(std::shared_ptr<fasttext::Args>)á╗:
src/fasttext.cc:237:24: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  237 |       std::vector<std::thread> threads;
      |                        ^~~~~~
src/fasttext.cc:22:1: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
   21 | #include <algorithm>
  +++ |+#include <thread>
   22 | #include <stdio.h>
src/fasttext.cc:237:24: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  237 |       std::vector<std::thread> threads;
      |                        ^~~~~~
src/fasttext.cc:237:24: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:237:30: erreur: l'argument 1 du patron est invalide
  237 |       std::vector<std::thread> threads;
      |                              ^
src/fasttext.cc:237:30: erreur: l'argument 2 du patron est invalide
src/fasttext.cc:239:17: erreur: requÛte du membre ½ápush_backá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  239 |         threads.push_back(std::thread([=]() { trainThread(i); }));
      |                 ^~~~~~~~~
src/fasttext.cc:239:32: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  239 |         threads.push_back(std::thread([=]() { trainThread(i); }));
      |                                ^~~~~~
src/fasttext.cc:239:32: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:241:30: erreur: requÛte du membre ½ábeginá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  241 |       for (auto it = threads.begin(); it != threads.end(); ++it) {
      |                              ^~~~~
src/fasttext.cc:241:53: erreur: requÛte du membre ½áendá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  241 |       for (auto it = threads.begin(); it != threads.end(); ++it) {
      |                                                     ^~~
src/fasttext.cc: Dans la fonction membre ½ávoid fasttext::FastText::textVectors(std::vector<std::__cxx11::basic_string<char> >&, int, std::vector<float>&)á╗:
src/fasttext.cc:450:20: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  450 |   std::vector<std::thread> threads;
      |                    ^~~~~~
src/fasttext.cc:450:20: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:450:20: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
src/fasttext.cc:450:20: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:450:26: erreur: l'argument 1 du patron est invalide
  450 |   std::vector<std::thread> threads;
      |                          ^
src/fasttext.cc:450:26: erreur: l'argument 2 du patron est invalide
src/fasttext.cc:452:13: erreur: requÛte du membre ½ápush_backá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  452 |     threads.push_back(std::thread([=]() { textVectorThread(i, sents, emb, num_threads); }));
      |             ^~~~~~~~~
src/fasttext.cc:452:28: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  452 |     threads.push_back(std::thread([=]() { textVectorThread(i, sents, emb, num_threads); }));
      |                            ^~~~~~
src/fasttext.cc:452:28: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:454:26: erreur: requÛte du membre ½ábeginá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  454 |   for (auto it = threads.begin(); it != threads.end(); ++it) {
      |                          ^~~~~
src/fasttext.cc:454:49: erreur: requÛte du membre ½áendá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  454 |   for (auto it = threads.begin(); it != threads.end(); ++it) {
      |                                                 ^~~
src/fasttext.cc: Dans la fonction membre ½ávoid fasttext::FastText::train(std::shared_ptr<fasttext::Args>)á╗:
src/fasttext.cc:869:22: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  869 |     std::vector<std::thread> threads;
      |                      ^~~~~~
src/fasttext.cc:869:22: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:869:22: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
src/fasttext.cc:869:22: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:869:28: erreur: l'argument 1 du patron est invalide
  869 |     std::vector<std::thread> threads;
      |                            ^
src/fasttext.cc:869:28: erreur: l'argument 2 du patron est invalide
src/fasttext.cc:871:15: erreur: requÛte du membre ½ápush_backá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  871 |       threads.push_back(std::thread([=]() { trainThread(i); }));
      |               ^~~~~~~~~
src/fasttext.cc:871:30: erreur: ½áthreadá╗ n'est pas un membre de ½ástdá╗
  871 |       threads.push_back(std::thread([=]() { trainThread(i); }));
      |                              ^~~~~~
src/fasttext.cc:871:30: note: ½ástd::threadá╗ est dÚfini dans l'en-tÛte ½á<thread>á╗á; avez-vous oubliÚ ½á#include <thread>á╗á?
src/fasttext.cc:873:28: erreur: requÛte du membre ½ábeginá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  873 |     for (auto it = threads.begin(); it != threads.end(); ++it) {
      |                            ^~~~~
src/fasttext.cc:873:51: erreur: requÛte du membre ½áendá╗ dans ½áthreadsá╗, lequel est de type non classe ½áintá╗
  873 |     for (auto it = threads.begin(); it != threads.end(); ++it) {
      |
Wan-Yifei commented 2 years ago

I don't think sen2vec supports win10. It only supports macOS and Linux as I know.

guptaprkhr commented 2 years ago

Hello, That is true. We don't support S2V on Windows. But if anybody comes with a workaround, they are welcome to contribute.

Wan-Yifei commented 2 years ago

I am trying to build a docker based S2V API on windows. If it works well and is light enough. I will share it here.