Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Gruw 13 Ledna 2009, 18:21:09

Název: Problém s funkčností CPP [vyřešeno]
Přispěvatel: Gruw 13 Ledna 2009, 18:21:09
Zdravím,

dneska mi po kompilaci jednoduchého prográmku v C++ vyhodil chybku. Jedná se pouze o Newtonův algorytmus, v prosinci mi to při kompilaci fungovalo. Te mi to po spuštění napíše toto:

./newton: line 43: syntax error near unexpected token `('
./newton: line 43: `namespace std __attribute__ ((__visibility__ ("default"))) {'


Zkusil jsem přeinstalovat cpp kompilátor i C knihovny a znova zkonpilovat, asi 10x jsem to zkoušel a nic. Kvůli důležitosti knihovny libgcc1 jsem ji ani nemohl odstranit. Nejde ani o to, že mi nefunguje jednoduchý program, ale nefunguje mi vůbec nic, co si sám napíšu a zkompiluju. Nevíte pls někdo, co s tím?

Verze cpp: 4.3

Předem díky moc za radu, jestli je ještě něco potřeba, není problém, určitě sem doplním, ale sám nevím, co by to mělo být.
Název: Re: Problém s funkčností CPP
Přispěvatel: Martin - ViPEr*CZ* 13 Ledna 2009, 19:02:47
Tož známý příklad hallo world ale jede ne?

toto neznám:

namespace std __attribute__ ((__visibility__ ("default"))) {' //to je nějaký Váš kód?
Název: Re: Problém s funkčností CPP
Přispěvatel: Gruw 13 Ledna 2009, 19:11:59
Stejnou chybu mi hází i tento kód:

#include <iostream>
using namespace std;

int main(){
   return 0;
}


Vzhledem k tomu, že v souboru newton v mém problému, je načítání <iostream> až po dvou řádcích komentářu a jednoho oddělovacího, je u výše uvedeného kódu řádek chyby 40.

Jestli se já nemýlím, je nutné načítat std pro možnost vypisování. Vypadá to na chybu v iostream, ale jak to opravit, to netuším.
Název: Re: Problém s funkčností CPP
Přispěvatel: Martin - ViPEr*CZ* 13 Ledna 2009, 19:25:26
Tak to je divný, že by byla iostream špatná. Zkoušel jste přeinstalovat libstd knihovnu?
Název: Re: Problém s funkčností CPP
Přispěvatel: Pavel Půlpán 13 Ledna 2009, 19:31:48
Technická. Jakým příkazem kompiluješ?
Název: Re: Problém s funkčností CPP
Přispěvatel: nettezzaumana 13 Ledna 2009, 19:38:48
Citace
> cat << 'EOF' >xx
#include <iostream>
using namespace std;

int main(){
   return 0;
}
EOF
> g++ -o xx xx.c
> file xx
xx: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.4, dynamically linked (uses shared libs), not stripped

^^ whats the problem?
Název: Re: Problém s funkčností CPP
Přispěvatel: Gruw 13 Ledna 2009, 20:20:57
Reinstalace nepomohla.
Kompiloval jsem to příkazem:
cpp xx.cpp -o xx

S použitím g++ to funguje. Sice nevím proč, mělo by to snad fungovat obojí bez problémů, ale teď to běhá. Možná mám jen wokno :D
Název: Re: Problém s funkčností CPP
Přispěvatel: nettezzaumana 13 Ledna 2009, 21:06:35
OMG :D ..

cpp - The C Preprocessor // viz. `man cpp`
gcc - GNU project C and C++ compiler // viz. `man g++`
Název: Re: Problém s funkčností CPP
Přispěvatel: Pavel Půlpán 13 Ledna 2009, 21:06:56
Uff, ale cpp je C preprocesor!

Kompilátor C je gcc.
Kompilátor C++ je g++.
Název: Re: Problém s funkčností CPP
Přispěvatel: nettezzaumana 13 Ledna 2009, 21:08:01
Uff, ale cpp je C preprocesor!

Kompilátor C je gcc.
Kompilátor C++ je g++.
.. heh. ja driv ;)
Název: Re: Problém s funkčností CPP
Přispěvatel: Pavel Půlpán 13 Ledna 2009, 21:08:13
Grr... a já se zas naučil říkat uff! Kde sem to jen pochytil? :D
Název: Re: Problém s funkčností CPP
Přispěvatel: Martin - ViPEr*CZ* 13 Ledna 2009, 21:09:18
No už jsem přepracovanej... taková blbost mě nenapadla.... zvlášť když dotyčný píše že mu to před tím šlo... asi měl symlink gcc na g++  ;D
Název: Re: Problém s funkčností CPP
Přispěvatel: Pavel Půlpán 13 Ledna 2009, 21:10:46
Nezaměnil kompilátory, to by třeba ani nebylo fatální. Zaměnil preprocesor za kompilátor.
Název: Re: Problém s funkčností CPP
Přispěvatel: Yontalcar 13 Ledna 2009, 22:34:28
Nezaměnil kompilátory, to by třeba ani nebylo fatální. Zaměnil preprocesor za kompilátor.
fatální by to bylo:
http://forum.ubuntu.cz/index.php/topic,31152.0.html
Název: Re: Problém s funkčností CPP
Přispěvatel: Pavel Půlpán 14 Ledna 2009, 08:25:19
Nj, v tomhle případě asi jo. Myslel jsem to opačně (g++ klasický C zkousne).
Název: Re: Problém s funkčností CPP
Přispěvatel: Gruw 14 Ledna 2009, 16:02:53
Musím bohužel potvrdit, že jsem si to spletl :D Před Vánocema jsem se teprve na hodině (gympl) seznámil s g++ a jak jsem se na to přes svátky nepodíval a soubory byly s koncovkou cpp, měl jsem blbou asociaci :D Díky za upozornění, asi nesmím být l*ma :'(