Avatar billede jasperDK Nybegynder
26. januar 2004 - 07:46 Der er 32 kommentarer og
2 løsninger

C++ compiler

Hvor kan jeg finde en c++ compiler til Linux RH9?
Skal helst være med et grafisk design, eller noget ligende Borland.

Tak!
Avatar billede Slettet bruger
26. januar 2004 - 08:03 #1
C++ compileren er inkluderet i RedHat. Led blandt pakkerne efter g++ (Det kan være RedHat kalder den gpp).

Hvis du vil have en grafisk front-end til den, er der mange, der er glade for Kdevelop.

Og, hvis du er glad for Borlands programmer, bør du nok vide, at Delphi er lavet i en udgave til Linux også. Den hedder Kylix, og er gratis, hvis du bruger den til at skrive programmer under GPL. http://www.borland.com/kylix/
Avatar billede arne_v Ekspert
26. januar 2004 - 13:19 #2
Kylix er så vidt jeg ved *både* Delphi og C++ Builder.
Avatar billede Slettet bruger
26. januar 2004 - 13:26 #3
arne_v: Jo, det har du vel egentlig ret i.
Avatar billede jasperDK Nybegynder
26. januar 2004 - 17:27 #4
Har kigget lidt på Kylix, ku' ik finde ud af det.
Har også kigget lidt på kdevelop, det er bare underligt, det opretter 16-20 filer i en mappe, ingen er mit program, og så skriver den selv en masse kode før jeg er startet med at programmerer, det tager også 10000år at starte et project.
Da jeg søgte under gpp fandt den ingen ting, men da jeg søgte under g++ fandt den to filer und /usr/bin; g++ og g++296.
Avatar billede jasperDK Nybegynder
26. januar 2004 - 17:29 #5
fandt lige en fil til der hed c++ i /usr/bin. Når jeg prøver at køre filerne sker der ingen ting, hvad skal jeg gøre, det er ligemeget om det er grafisk-miljø, men jeg vil bare godt have noget, som kan se mine fejl! Kan Kwrite ikke det?
Avatar billede arne_v Ekspert
26. januar 2004 - 17:33 #6
g++ -v
c++ -v

bør vise versioner
Avatar billede arne_v Ekspert
26. januar 2004 - 17:34 #7
Normalt bygger og kører du med:

g++ foobar.cpp -o foobar
./foobar
Avatar billede jasperDK Nybegynder
26. januar 2004 - 18:43 #8
prøver lige arne!
Avatar billede jasperDK Nybegynder
26. januar 2004 - 19:18 #9
øhh, forstår det ikke helt, hvor og i hvilken mappe skal jeg skrive:
g++ foobar.cpp -o foobar
./fooba
Avatar billede jasperDK Nybegynder
26. januar 2004 - 19:21 #10
g++ versionen er:
Læser specifikationer fra /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux
Thread model: posix
gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)

og c++ versionen er:
Læser specifikationer fra /usr/lib/gcc-lib/i386-redhat-linux/3.2.2/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --host=i386-redhat-linux
Thread model: posix
gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
Avatar billede arne_v Ekspert
26. januar 2004 - 20:06 #11
I et console/telnet/xterm vindue og i den mappe hvor foobar.cpp ligger
Avatar billede arne_v Ekspert
26. januar 2004 - 20:07 #12
g++ og c++ er tydeligvis synonymer som kører samme compiler
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:10 #13
Altså jeg finder mappen hvori foobar.cpp ligger, åbner en terminal, (telnet? xterm?), og skriver
g++ foobar.cpp -o foobar
./foobar
og nu burde alle mine c++ filer være compilet og klare til at køre?
Avatar billede arne_v Ekspert
26. januar 2004 - 20:15 #14
Nej kun dit foobar problem.

Hvis de hedder a.cpp og b.cpp skal du:

g++ a.cpp -o a
g++ b.cpp -o b
./a
./b
Avatar billede arne_v Ekspert
26. januar 2004 - 20:16 #15
Hvis du skal bruge flere filer til et program er det:

g++ fil1.cpp fil2.cpp -o mitprogram

eller:

g++ -c fil1.cpp -o fil1.o
g++ -c fil2.cpp -o fil2.o
g++ fil1.o fil2.o -o mitprogram
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:17 #16
Jeg forstår ikke! a.cpp kunne det være hejverden.cpp? Hvis ja: behøver der så være to filer?
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:17 #17
Okay, så ikke din kommentar!
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:25 #18
Gør som du siger med følgende kode:
#include <iostream>
using namespace std;
int main()
{
    cout << "Hello world!";
    system("pause");
    return 0;
}

[kasper@localhost Desktop]$ g++ prove.cpp -o prove
prove.cpp:24:2: advarsel: ingen linjeskift ved slutningen af filen
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:27 #19
hov forkert kode:
#include <iostream>
using namespace std;
int main()
{
    cout << "Hello world!";
    return 0;
}

Men der sker ingen ting!
Når jeg bruger system("pause") er det ikke en køre-bar fil.
Avatar billede arne_v Ekspert
26. januar 2004 - 20:29 #20
ingen linjeskift ved slutningen af filen => lav et linie skift efter sidste }
Avatar billede arne_v Ekspert
26. januar 2004 - 20:30 #21
Du bør nok bruge:

cout << "Hello world!" << endl;
Avatar billede arne_v Ekspert
26. januar 2004 - 20:31 #22
system("pause");

kræver:

#include <cstdlib>

(men jeg er ikke sikker på at der er en pause kommando i bash)
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:31 #23
Mange tak, prøver lige! (Hvorfor skal der være linie-skift efter sidste linie?)
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:33 #24
Kan heller ikke få systam("pause"); til virke med #include <cstdlib>. Det er lidt kedeligt, når man ikke kan se hvad man laver!
Avatar billede jasperDK Nybegynder
26. januar 2004 - 20:36 #25
vender tilbage imorgen!
Avatar billede arne_v Ekspert
26. januar 2004 - 20:38 #26
gcc vil af uransagelige årsager have et linie skift efter sidste linie.
Avatar billede arne_v Ekspert
26. januar 2004 - 20:39 #27
system("pause");

bør compile men pause må skulle erstattes af den tilsvarend bash kommando.

Hvis du kører programmet fra et eksisterende vindue bør du kunne se output.
Avatar billede jasperDK Nybegynder
27. januar 2004 - 07:47 #28
Der kommer intet output! Lige meget hvordan jeg sætter programmet op! Kan du ikke lige skrive koden? Så jeg kan copy past?
Avatar billede arne_v Ekspert
27. januar 2004 - 18:35 #29
(mystisk mit indlæg forsvand - jeg prøver igen)

Lav fil helloworld.cpp med indhold:

#include <iostream>

using namespace std;

int main()
{
    cout << "Hello world!" << endl;
    return 0;
}
Avatar billede arne_v Ekspert
27. januar 2004 - 18:36 #30
i tekst mode (console, telnet, xterm) compile med:

g++ hellowprld.cpp -o helloworld

og kør med:

./helloworld

så skal den skrive gæt selv hvad på skærmen.
Avatar billede jasperDK Nybegynder
27. januar 2004 - 18:40 #31
Ahh, tak! Nu virker det! Jeg skrev ikke ./helloworld, men dobbleklikkede på filen, når det var en kørbar fil, troede det var ligesom i Win xp.

10000000000 gange tak, lig lige et svar!
Avatar billede arne_v Ekspert
27. januar 2004 - 18:45 #32
svar
Avatar billede jasperDK Nybegynder
29. januar 2004 - 16:38 #33
Nu har jeg siddet og lavet nogle små-programmer! Men de er kun i terminalen, hvordan får jeg dem i en selvstændig box?
Avatar billede Slettet bruger
29. januar 2004 - 22:58 #34
Så skal du have en hel masse kode til at styre et vindue, og som kan sørge for at starte og slutte korrekt og modtage museklik og al den slags. Der vil jeg anbefale dig at sætte dig ind i et af de mange værktøjslibraries, som kan overtage lidt af arbejdet for dig. Dvs. f.eks. GTK+ eller Qt.

Kdevelop kan for eksempel lave en del af arbejdet med at styre Qt for dig. (Det er specielt beregnet på at lave KDE-programmer, og KDE bygger over Qt.) Det var derfor Kdevelop lavede alle de filer. Det er nemlig filer, der er standard i et KDE-program.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester