Planuję więc napisać bibliotekę C ++ i chcę, aby była ona wieloplatformowa, a ponieważ ta biblioteka nie będzie obsługiwać interfejsu użytkownika i chcę mieć jak najmniej zależności, nie będę używać Qt (tak naprawdę Qt nie pomoże mi osiągnąć tego, czego chcę, wszystko, co planuję używać to STL i Boost). Teraz, gdy chodzi o budowę projektu wieloplatformowego, bardzo podoba mi się QMake, ponieważ jest niezwykle łatwy w użyciu i mam z tym doświadczenie. Słyszałem też dobre rzeczy o CMake, chociaż naprawdę wątpię, aby był tak łatwy w użyciu jak QMake.
Tak czy inaczej, oto moje pytanie: czy powinienem trzymać się narzędzia do automatyzacji kompilacji, które znam, czy też QMake jest poza kontekstem dla projektu innego niż Qt? Czy powinienem wykorzystać tę okazję do nauki CMake? Czy jest lepsza alternatywa dla tych dwóch?
Odpowiedzi:
Ten wybór zależy wyłącznie od Ciebie.
Zwrócę jednak uwagę, że z wielu powodów bardzo duża liczba projektów opartych na Qt odeszła od QMake i przeszła na CMake. Zwrócę również uwagę, że nie ma technicznego powodu, abyś nie mógł używać QMake, jeśli wolisz.
Osobiście używam CMake, ponieważ całkiem dobrze przyjmuje rolę, w której kiedyś preferowano narzędzia automatyczne, robiąc to z zestawem narzędzi i składnią, która jest znacznie łatwiejsza do zrozumienia i pracy. Ale widzę atrakcyjność używania QMake - składnia jest znacznie prostszy i może być łatwiejszy do zrozumienia i użycia niż CMake.
źródło
Pracowałem kiedyś dla firmy ( Interactive Network Technologies ), która tworzyła zestawy SDK do użytku w przestrzeni Contouring, Seismic, Welllog i GIS. Produkt C ++ był obsługiwany dla wielu odmian systemów Unix i Windows (w przeszłości, gdy trzeba było zdefiniować NT w porównaniu z innymi smakami)
Kiedy pojawiła się QT, miała już QMake; W tym czasie znałem markę i Anta. Po spędzeniu trzech dni z QMake wyrzuciłem go i po prostu użyłem make.
Chociaż make może być niezwykle skomplikowane, sugerowałbym użycie go lub Ant kontra QMake.
źródło