Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: lawlessbg в Jun 09, 2008, 08:08



Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: lawlessbg в Jun 09, 2008, 08:08
Здравайте,
след като си обнивих пакетите ми инсталира ccp и g++ и др. версия 4.3.1-5. И когато пробвам да компилирам нещо ми дава:
Цитат
$g++ -v main.cpp
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.3.1-1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --enable-targets=all --enable-cld --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.3.1 (Debian 4.3.1-1)
COLLECT_GCC_OPTIONS='-v' '-shared-libgcc' '-mtune=generic'
 /usr/lib/gcc/i486-linux-gnu/4.3.1/cc1plus -quiet -v -D_GNU_SOURCE main.cpp -quiet -dumpbase main.cpp -mtune=generic -auxbase main -version -o /tmp/ccSQvZkg.s
ignoring nonexistent directory "/usr/local/include/i486-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/i486-linux-gnu/4.3.1/../../../../i486-linux-gnu/include"
ignoring nonexistent directory "/usr/include/i486-linux-gnu"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/4.3
 /usr/include/c++/4.3/i486-linux-gnu
 /usr/include/c++/4.3/backward
 /usr/local/include
 /usr/lib/gcc/i486-linux-gnu/4.3.1/include
 /usr/lib/gcc/i486-linux-gnu/4.3.1/include-fixed
 /usr/include
End of search list.
GNU C++ (Debian 4.3.1-1) version 4.3.1 (i486-linux-gnu)
        compiled by GNU C version 4.3.1, GMP version 4.2.2, MPFR version 2.3.1.
GGC heuristics: --param ggc-min-expand=81 --param ggc-min-heapsize=96817
Compiler executable checksum: fff5ba5f8fdd8c0ac14370afcfeac61f
main.cpp:1:22: error: iostream.h: No such file or directory
main.cpp: In function ‘int main()’:
main.cpp:25: error: ‘cout’ was not declared in this scope
main.cpp:25: error: ‘endl’ was not declared in this scope
main.cpp:28: error: ‘cin’ was not declared in this scope
main.cpp:33: error: ‘cin’ was not declared in this scope
main.cpp:42: error: ‘cin’ was not declared in this scope



Мъчих се, но не ще да свали да предишната версия. Дава ми, че трябва да махнае половината пакети за да го направи.
Ако има някакъв начин да оправя проблема без да доунградвам ще е много хубаво. Ползвам sidux. Благодаря предварително!


Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: lawlessbg в Jun 09, 2008, 08:30
Значи като използвам командата така:
Цитат
$g++ -v -I /usr/include/c++/4.1.3/backward/ main.cpp  

ми го компилира. Но не знам как да включа директорията към пътя за търсене, за да не да я пиша всеки път.


Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: gat3way в Jun 09, 2008, 10:44
#include "/usr/include/c++/4.1.3/backward/iostream.h"

Разбира се е доволно глупаво решение :)


Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: neter в Jun 09, 2008, 10:51
Аз бих предложил и друг вариант - symlink към /usr/include/c++/4.1.3/ в /usr/include/c++/4.3
Примерен код
ln -s /usr/include/c++/4.1.3/ /usr/include/c++/4.3

понеже, както се вижда, g++ е компилиран да използва само папката /usr/include/c++/4.3 ;)


Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: lawlessbg в Jun 09, 2008, 12:25
Благодаря за отговорите.
Успях да наглася Code::Blocks-а да търси в /usr/include/c++/4.1.3/backward/ когато компилира. А symlink предпочетох да не правя. Рещих, че щом така са го измислили (/usr/include/c++/4.3 сочи /usr/include/c++/4.3.1)  - така да си седи. Все пак, ако ми се наложи да компилирам нещо от сорс и ми даде подобна грешка, ще знам какво да направя. Пък на следващия ъпдейт може да го няма този проблем.
Още веднъж благодаря за отговорите! :)


Титла: (РЕШЕН) Iostream.h: no such file or directory
Публикувано от: rpetrov в Jun 09, 2008, 14:06
Цитат (lawlessbg @ Юни 09 2008,08:08)
Здравайте,
след като си обнивих пакетите ми инсталира ccp и g++ и др. версия 4.3.1-5. И когато пробвам да компилирам нещо ми дава:
Цитат
$g++ -v main.cpp
Using built-in specs.
....
gcc version 4.3.1 (Debian 4.3.1-1)
....
main.cpp:1:22: error: iostream.h: No such file or directory
....


Ха и заглавието е променено на решен  :D
http://gcc.gnu.org/gcc-4.3/porting_to.html    ;)