problem z kompilacja i linkowaniem

0

Hej :))
Mam problem, nie mam pojęcia jak skompilować pliki oraz je zlinkować tak żeby otrzyamać gotowy program.(ogl jako kompliator słuzy mi Terminal w Linuxie)
A i to był przykład z ksiązki

plik afryka.cpp
`#include <iostream>
using namespace std;
#include "nagl.h"
int ile_murzynow=9;
int main()
{ cout<<"Poczatek porogramu\n";
funkcja_francuska();
funkcja_niemiecka();
cout<<"Koniec programu\n";
}

void funkcja_egipska()
{ cout<<"Jestem w Kairze !----------\n";
cout<<"Na świecie jest" <<ile_murzynow
<<" murzynów, oraz"<<ile_europejczykow
<<" europejczyków\n";
}

void funkcja_kenijska ()
{ cout<<"Jestem w Nairobi !----------\n";
cout<<"Na świecie jest" <<ile_murzynow
<<" murzynów, oraz"<<ile_europejczykow
<<" europejczyków\n";
}

plik europa.cpp#include <iostream>
#include "nagl.h"
using namespace std;
int ile_europejczykow=8;

void funkcja_francuska()
{ cout<<"Jestem w Paryżu !********\n";
cout<<"Na świecie jest" <<ile_murzynow
<<" murzynów, oraz"<<ile_europejczykow
<<" europejczyków\n";

funkcja_egipska();

}

void funkcja_niemiecka ()
{ cout<<"Jestem w Berlinie !-*****\n";
cout<<"Na świecie jest" <<ile_murzynow
<<" murzynów, oraz"<<ile_europejczykow
<<" europejczyków\n";
funkcja_kenijska();

}
`
plik nag.h

`extern int ile_murzynow;
extern int ile_europejczykow;

void funkcja_egipska();
void funkcja_kenijska();
void funkcja_francuska();
void funkcja_niemiecka();
`

0
adssoon napisał(a):

Hej :))
Mam problem, nie mam pojęcia jak skompilować pliki oraz je zlinkować tak żeby otrzyamać gotowy program.(ogl jako kompliator słuzy mi Terminal w Linuxie)
A i to był przykład z ksiązki

Ogólnie wpisujesz w google "kompilacja linuks gcc", wyskakuje ci opis krok po kroku.
Później możesz sobie poczytać o make i cmake.

Albo zrzucasz wszystko na ide typu exlipce czy qtcreator.

0

Najlepiej zaprzyjaźnić się z jakimś build managerem, np CMake:

cmake_minimum_required(VERSION 3.6)
project(MojaDziwnaApka)

set (CMAKE_CXX_STANDARD 17)

add_executable(nazwaApki
    nagl.h
    afryka.cpp
    europa.cpp)

Powinno zadziałać na dowolnej platformie, pod dowolne IDE: Visual Studio, XCode, Qt Creator, Code Blocks, itd itp.

0

g++ -Wall -pedantic -std=c++14 afryka.cpp europa.cpp -o nazwa_aplikacji (opcjonalnie dodaj -g, jeśli chcesz debugować program).

Choć w przypadku większych projektów zrób tak, jak sugeruje @MarekR22.

1 użytkowników online, w tym zalogowanych: 0, gości: 1