Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Budowanie aplikacji - automatyzacja

Ostatnio zmodyfikowano 2018-12-02 23:03
Autor Wiadomość
nicraM
Temat założony przez niniejszego użytkownika
Budowanie aplikacji - automatyzacja
» 2018-12-02 16:59:40
Witam forumowiczów i programistów `C++.
Jestem początkującym jeśli chodzi o tematykę C++ więc proszę o wyrozumiałość. Do tej pory pisałem co nieco w PHP (symfony 4) i chcę w ramach nauki napisać backend jako API z wykorzystaniem frameworka http://pistache.io/.

Do tej pory w kursie wykorzystywane były w większości biblioteki wbudowane w c++ i kompilowanie kodu nie wymagało żadnych dodatkowych narzędzi. Wiem, że podczas pisania mojego skromnego api będę używał dodatkowych bibliotek do SOAP oraz libsnmp. Co prawda nie będzie to kolosalna wielkość zewnętrznych bibliotek ale chciałbym od początku używać "dobrych praktyk". Ściągając jakieś projekty z githuba, czy biblioteki by je zainstalować wydaje się polecana `cmake -XXX` `make` czy `configure`.
Moje pytanie tu do profesjonalistów. Jak od początku tworzyć projekty by później instalacja wymagała jedynie wydanie 3 poleceń: `configure --otpt && make && make install`? Również chciałbym by linker niektóre biblioteki robił statycznie by na docelowym hoście nie trzeba było doinstalowywać bibliotek.

Z góry dziękuję za sugestie.
Pozdrawiam
P-173071
garlonicon
» 2018-12-02 21:37:55
Jak od początku tworzyć projekty by później instalacja wymagała jedynie wydanie 3 poleceń: `configure --otpt && make && make install`?
Poczytaj o plikach Makefile. A jeśli chcesz pisać od razu przenośnie i nieco wygodniej, to możesz użyć programu CMake, który takie pliki wygeneruje automatycznie. Oczywiście pliki CMakeLists.txt i tak trzeba napisać ręcznie, ale sam CMake ułatwia sporo rzeczy, na przykład przejście z linkowania dynamicznego na statyczne to zwykle kwestia zmiany słowa SHARED na STATIC w add_library(), a cała reszta dzieje się automatycznie. Zresztą, wspomniany framework też korzysta z CMake-a, więc pewnie będzie można go względnie łatwo podpiąć jako zależność we własnych plikach CMakeLists.txt.
P-173076
nicraM
Temat założony przez niniejszego użytkownika
» 2018-12-02 23:03:22
Dzięki za odpowiedź. Tak myślałem by używać cmake. Biorę się za lekturę.

Szkoda, że na łamach portalu nie ma nic na ten temat, albo nie znalazłem, bo autor tak fajnie opisuje zagadnienia.
P-173079
« 1 »
  Strona 1 z 1