• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[Poradnik] Kompilacja kodu C++ za pomocą Notepad++ i MinGW - cz.1.

VPS Starter Arubacloud
+8 głosów
8,828 wizyt
pytanie zadane 3 maja 2016 w Nasze poradniki przez Patrycjerz Mędrzec (192,340 p.)
edycja 3 maja 2016 przez Patrycjerz

Witam,

eksperymentując ostatnio z MinGW postanowiłem zaprzęgnąć go do pracy z Notepad++ i udało się. Jako, że wiedzy nigdy za wiele, postanowiłem stworzyć mini-poradnik omawiający czynności potrzebne do uzyskania takiego efektu.

Co będzie nam potrzebne?

  • Notepad++
  • MinGW (port GCC dla Windows)

Jak zainstalować Notepad++?

Nie sądzę, aby komukolwiek taka odpowiedź była potrzebna, gdyż jest to proste i intuicyjne - wystarczy pobrać instalator z działu Download i kierować się poleceniami na ekranie.

Stan na 02.05.2016

Jak zainstalować MinGW?

Wchodzimy na stronę http://www.mingw.org/ i wciskamy przycisk Download Installer.

Stan na 02.05.2016

Powinno się wtedy rozpocząć pobieranie instalatora. Po jego ściągnięciu włączamy go i przechodzimy przez proces instalacji (ważne, aby zaznaczyć opcję also install support for the graphical user interface).

Po jego zakończeniu powinno się pokazać okno specjalnej aplikacji do pobierania i aktualizowania paczek kompilatora. Zaznaczamy pozycję mingw32-gcc-g++, klikając na kwadracik i wybierając opcję Mark for Installation.

Następnie klikamy zakładkę Installation oraz opcję Apply Changes.

Zatwierdzamy instalację i gdy zakończy się powodzeniem, wychodzimy z aplikacji.

Instalacja wtyczki NppExec

Zaczynamy od zainstalowania specjalnej wtyczki, która umożliwi nam korzystanie z systemowej konsoli z poziomu Notepad++. W tym celu wchodzimy w Wtyczki → Plugin Manager  Show Plugin Manager.

Następnie włączamy zakładkę Available i zaznaczamy pozycję NppExec.

Instalujemy naszą wtyczkę. Podczas instalacji może pojawić się pewien komunikat, ale ignorujemy go (nie sądzę, aby miało to jakieś wielkie konsekwencje).

Zatwierdzamy także komunikat o restarcie Notepad++.

Nauka obsługi systemowych komend oraz kompilatora GCC

Choć obsługa kompilatora poprzez terminal jest w dzisiejszych czasach archaiczna, to jest ona całkiem prosta i nad wyraz przydatna.

Komendy konsoli:

  • cd <ścieżka_do_katalogu> - przejście do podanego katalogu
  • cd.. - przejście do katalogu o stopień w górę
  • <nazwa_programu> <parametr_1> <parametr_2>... - wywołanie programu z parametrami (jeśli takowe aplikacja obsługuje) 

Na przykład linijka cd C:\Users\Jasiu\Documents przeniesie nas do katalogu Documents (Dokumenty). Oczywiście obsługiwane są także przejścia względne, czyli gdy jesteśmy w katalogu Jasiu, to możemy przejść do katalogu Documents poprzez zapis cd Documents.

Program możemy włączać za pomocą tylko jego nazwy (jeśli znajdujemy się w odpowiednim katalogu), czyli: program.exe lub samo program. Z parametrami sprawa ma się trochę inaczej - nazwę programu oraz parametry oddzielamy spacjami, czyli: program parametr1 parametr2 (program z dwoma parametrami). Należy pamiętać, że gdy parametr zawiera w sobie biały znak, należy go oblec w cudzysłowy, czyli: program "parametr jeden" parametr2.

Gdy postawy konsoli mamy już za sobą, możemy zająć się samym kompilatorem - jest on oczywiście zwykłym programem i go też uruchomimy za pomocą odwołania z parametrami.

Parametry kompilatora GCC:

  • <nazwa_pliku_źródłowego> - nazwa pliku źródłowego
  • -o <nazwa_pliku_wyjścia> - nazwa pliku wykonywalnego, która może być w postaci np. main.exe, ale również samego main (nazwa ta nie musi dotyczyć tylko pliku wykonywalnego, ale pozostańmy przy takim uproszczeniu)
  • -L<ścieżka_do_katalogu_bibliotek> - ścieżka do katalogu bibliotek
  • -l<nazwa_biblioteki> - nazwa biblioteki, gdzie nazwa_biblioteki to tekst między lib, a .a w nazwie pliku, np. libnazwa_biblioteki.a
  • -I<ścieżka_do_katalogu_plików_nagłówkowych> - ścieżka do katalogu, w którym znajdują się nasze nagłówki (aby pisać #include <...> zamiast #include "...")

Więc pełne wywołanie, z użyciem wszystkich parametrów, wyglądałoby mniej więcej tak: <ścieżka_do_kompilatora>g++ main.cpp -o main.exe -LC:\Biblioteki -lnazwabiblioteki1 -lnazwabiblioteki2 -IC:\Naglowki. Kolejność parametrów jest oczywiście dowolna, zaś g++ to nazwa programu, który jest kompilatorem (znajduje się w folderze, w którym zainstalowaliśmy MinGW).

Zapewne ktoś się zapyta, czy ciągle musimy wpisywać tę ścieżkę do pliku kompilatora - ależ nie i zaraz rozwiążemy ten problem, korzystając z tzw. zmiennych środowiskowych.

Edytowanie zmiennej środowiskowej Path

Zmienne środowiskowe służą do przechowywania informacji o aktualnie uruchomionym środowisku systemowym i są przydatne dla wielu programów (nie pytajcie mnie, jak to dokładnie działa). Nas oczywiście interesuje pewna własność tych zmiennych, czyli uniknięcie ciągłego wpisywania ścieżki do kompilatora (ale może to być również jakikolwiek inny program).

Najpierw zaczynamy od wejścia w Panel Sterowania → System i zabezpieczenia  System  Zaawansowane ustawienia systemu  Zmienne środowiskowe.

Następnie włączamy zmienną Path i dodajemy do niej ścieżkę naszego kompilatora.

Gdy nasza ścieżka zostanie wpisana, należałoby zrestartować komputer. Po tym procederze zmienna powinna zostać zmodyfikowana, ale warto sprawdzić, czy nic nie zostało zmienione, bo Windows lubi bawić się z nami w ciuciubabkę (ja np. musiałem dwa razy ustawiać ścieżkę, bo przy restarcie system usuwał wszelkie zmiany).

Teraz możemy korzystać z naszego kompilatora z każdego katalogu w systemie, bez podawania ścieżki do niego - należy jednak pamiętać, że nazwa katalogu, w którym aktualnie się znajdujemy, jest wykorzystywana do wykrywania pliku źródłowego oraz jako miejsce zapisu dla pliku .exe (gdy nie podamy ścieżek do owych plików).

...Ciąg dalszy w drugiej części (niestety, limit znaków)

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+10 głosów
0 odpowiedzi 2,380 wizyt
0 głosów
0 odpowiedzi 307 wizyt
pytanie zadane 13 stycznia 2016 w Nasze poradniki przez criss Mędrzec (172,590 p.)
0 głosów
1 odpowiedź 357 wizyt
pytanie zadane 22 grudnia 2015 w C i C++ przez criss Mędrzec (172,590 p.)

92,455 zapytań

141,263 odpowiedzi

319,100 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...