Próbuję skompilować pobrany program w systemie Windows. Program jest zwykle uruchamiany w systemie Linux, ale jest również zaprogramowany do pracy w systemie Windows (kod ma zdefiniowany kod #if (_WIN32) i twierdzi, że współpracuje z narzędziami nie zawierającymi systemu Borland). Kiedy próbuję użyć make z wiersza poleceń, mówi mi "Niepoprawny argument linii poleceń: -C". W pliku makefile istnieje wiele wierszy z napisem "make -C", po których następuje nazwa katalogu. Czy ta składnia nie działa w systemie Windows? Jaki jest prawidłowy sposób to zrobić? Czy istnieje sposób na skompilowanie tego dla natywnego użycia w Windows z tym makefile?Kompilowanie źródła C z plikiem Makefile w systemie Windows
Odpowiedz
-C jest "zmiana katalogu roboczego" tylko dla polecenia gmake (z pakietu GNU). Powinieneś zajrzeć do podręcznika do narzędzia Make-Utility i przekonać się, że jest w nim coś takiego.
Peter
Sam system Windows nie jest wyposażony w program narzędziowy. Microsoft ma narzędzie "make" dostarczane wraz z narzędziami programistycznymi (takimi jak Visual Studio, Platform SDK lub Windows Driver Kit), ale nazywa się to nmake
.
Prawdopodobnie potrzebujesz GNU make, aby przetworzyć te pliki Makefile. można uzyskać kopię systemu Windows tutaj:
Jeśli jednak makefile nie jest napisane, aby móc uruchomić na systemie Windows, to prawdopodobnie nie będzie działać dobrze. Musisz także upewnić się, że posiadasz wszystkie inne narzędzia programistyczne, do których wywołuje makefile (może kompilator Borland lub GCC), i może istnieć inna konfiguracja, która musi być wykonana specyficznie dla projektu, który chcesz zbudować. Prawdopodobnie nie jest to kwestia właściwego narzędzia make.
Czy używasz cygwin? Czy są jakieś instrukcje dotyczące instalowania w oknach (perhaphy w pliku README)?
- 1. Makefile, kompilowanie i łączenie
- 2. Kompilowanie kodu C z wiersza polecenia w systemie Windows?
- 3. Wstępne kompilowanie szablonów Handlebars.js w systemie Windows
- 4. Określanie, czy kompilowanie w systemie Windows lub innym systemie
- 5. Błąd pliku Makefile w systemie Windows
- 6. Jak ukryć kompilowanie wiadomości w Makefile?
- 7. Kompilowanie projektu z inną zgodnością źródła java
- 8. C++ makefile w systemie Linux z wieloma plikami * .cpp
- 9. Windows: ustanów powiązanie plików z plikiem wsadowym
- 10. Emacs 23.1.1 z gdb - wymuszanie źródła windows
- 11. Kompilowanie projektu Objective-C na systemie Linux (Ubuntu)
- 12. Kompilowanie pliku binarnego C# .NET x64 w systemie x86
- 13. Kompilowanie statycznych bibliotek TagLib 1.6.3 dla Windows
- 14. Kompilowanie mysql-python na Windows z PIP
- 15. Upuszczanie uprawnień w C++ w systemie Windows
- 16. Manipulowanie plikiem Pythona z C#
- 17. Podpisywanie aplikacji systemu Windows z plikiem .SPC?
- 18. Wiersz poleceń SQLPLUS z plikiem wsadowym Windows
- 19. Kompilowanie za pomocą gcc (cygwin na windows)
- 20. Kompilowanie C++ bez operatora usuwania
- 21. Kompilowanie C/GTK w Eclipse
- 22. Usunąć flagę z FLAGI C++ w Makefile?
- 23. Instalowanie buforów protokołów w systemie Windows
- 24. Kompilowanie wątków C++
- 25. Kompilowanie podstawowej klasy C++
- 26. C++ kompilowanie na Windows i Linux: przełącznik ifdef
- 27. Brakujący błąd separatora w Makefile
- 28. Kompilowanie x64 w 32-bitowej wersji Windows (Teamcity)
- 29. Kompilowanie wielu plików Objective-C w wierszu poleceń z klangiem
- 30. Błąd połączenia z taglib w systemie Windows
Niektóre "make" są bardzo penibel z CR/LF w ich plikach makefile. W niektórych przypadkach widziałem, że było to przyczyną wielu dziwnych raportów o błędach. (spróbuj ujednolicić swoje pliki Makefile) –
Czy możesz nam powiedzieć, które oprogramowanie? Czy próbowałeś/aś ./configure make make install –