Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Ошибка при попытке использовать iostream  (Прочитано 1741 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tetramin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Добрый день.

Я пытался написать программу типа хелловорлд.
Компилятор показывет столько ошибок, что они не помещаются на стандартный вывод.
Думая, что ошибка где-то либо в using namespace std, или в std::cout << ..., я решил попробовать оставить только это:
#include <iostream>

int main ()
{
return 0;
}

Файл iostream, вместе со всеми, прописанными в нём, есть в /usr/include/c++/4.4/bits
Как я понял в итоге, проблема именно в этих файлах.

Ребята, в чём у меня проблема. Пробовал переустанавливать g++. Не помогает.

Оффлайн __v1tos

  • Участник
  • *
  • Сообщений: 105
  • Ubuntuu 10.10 x86-64
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #1 : 13 Февраля 2011, 10:03:09 »
sudo apt-get install build-essential
Как компилируете?

AMD Phenom II 945, GA-MA790GPT-UD3H (HD 3300), 5 GiB ram

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #2 : 13 Февраля 2011, 10:03:58 »
Подозреваю, что компилируешь не с помощью g++. Ибо УМВР.

Оффлайн tetramin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #3 : 13 Февраля 2011, 10:15:59 »
build-essential у меня установлен

А компилирую так:
$ g++ -o hiall hiall.cpp

Я тут ещё попробовал math.h включить:
Часть кода:
/usr/include/c++/4.4/stdio.h:140: error: expected initializer before ‘__getStream’
/usr/include/c++/4.4/stdio.h:149: error: expected initializer before ‘clearerr’
/usr/include/c++/4.4/stdio.h:150: error: expected initializer before ‘fclose’
/usr/include/c++/4.4/stdio.h:151: error: expected initializer before ‘fflush’
/usr/include/c++/4.4/stdio.h:152: error: expected initializer before ‘fgetc’
/usr/include/c++/4.4/stdio.h:153: error: expected initializer before ‘fgetwc’
...
/usr/include/c++/4.4/stdio.h:363: error: ‘std::__getStream’ has not been declared
/usr/include/c++/4.4/stdio.h:364: error: ‘std::_fcloseall’ has not been declared
/usr/include/c++/4.4/stdio.h:365: error: ‘std::_fdopen’ has not been declared
/usr/include/c++/4.4/stdio.h:366: error: ‘std::_fgetc’ has not been declared
/usr/include/c++/4.4/stdio.h:367: error: ‘std::_fgetchar’ has not been declared
/usr/include/c++/4.4/stdio.h:368: error: ‘std::_fgetwc’ has not been declared
...
/usr/include/c++/4.4/math.h:152: error: expected initializer before ‘atan’
/usr/include/c++/4.4/math.h:153: error: expected initializer before ‘atan2’
/usr/include/c++/4.4/math.h:154: error: expected initializer before ‘ceil’
/usr/include/c++/4.4/math.h:155: error: expected initializer before ‘cos’
/usr/include/c++/4.4/math.h:156: error: expected initializer before ‘cosh’
...

Что же это такое...?
« Последнее редактирование: 13 Февраля 2011, 10:35:24 от tetramin »

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #4 : 13 Февраля 2011, 10:45:58 »
Обычно главная ошибка идёт первой в списке, остальное это лишь последствия.

Оффлайн __v1tos

  • Участник
  • *
  • Сообщений: 105
  • Ubuntuu 10.10 x86-64
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #5 : 13 Февраля 2011, 10:57:26 »
А как организовать вывод g++ в файл, что бы увидеть эти ошибки?
Я имею в виду перенаправить вывод в файл

Пользователь решил продолжить мысль 13 Февраля 2011, 11:01:35:
Нашел, попробуйте
Цитировать
g++ -o hiall hiall.cpp &> 1.txt
« Последнее редактирование: 13 Февраля 2011, 11:01:35 от __v1tos »
AMD Phenom II 945, GA-MA790GPT-UD3H (HD 3300), 5 GiB ram

Оффлайн tetramin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #6 : 13 Февраля 2011, 11:40:58 »
И меня такая команда интересовала), спасибо.

Вот начало вывода компилятора:
(Нажмите, чтобы показать/скрыть)

Это в случае iostream

Оффлайн __v1tos

  • Участник
  • *
  • Сообщений: 105
  • Ubuntuu 10.10 x86-64
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #7 : 13 Февраля 2011, 11:53:04 »
Всетаки у вас что то не то установлено.
У меня например здесь файла           /usr/include/c++/4.4/stddef.h         нет
и             /usr/include/c++/4.4/_stddef.h:108: error: ‘__cdecl’ does not name a type
еще не видел ни в одном файле соглашения о вызовах __cdecl (в g++ такие вещи не нужны)
AMD Phenom II 945, GA-MA790GPT-UD3H (HD 3300), 5 GiB ram

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #8 : 13 Февраля 2011, 12:00:31 »
In file included from /usr/include/c++/4.4/stddef.h:25,
Интересно, как это у тебя заголовочный файл из простого "C" затисался в "C++" каталог? Мне кажется, что тебе придётся грохнуть этот каталог (/usr/include/c++/4.4) полностью и переустановить пакеты, которые подскажет команда dpkg -S /usr/include/c++/4.4

Оффлайн tetramin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 6
    • Просмотр профиля
Re: Ошибка при попытке использовать iostream
« Ответ #9 : 13 Февраля 2011, 14:50:10 »
Снёс каталог /usr/include/c++/4.4
dpkg -S сказала, что нужно поставить libstdc+++-4.4. Поставил.
Попробовал скомпилировать. Ошибок значительно меньше стало. Теперь он просто говорил, что нет файла wchar.h
Я его скопировал из бэкапа папки 4.4 (которую как бы снёс).
Далее он начал ругаться на отсутствие locate.h
С ним я поступил так же, только скопировал его из папки /usr/include/bits
Ошибок стало больше... Решив, что проблема в каталоге /usr/include/bits и ещё, что такое копирование ни к чему хорошему не приведёт я просто написал
dpkg -S /usr/include/bits На что она мне ответила libc6-dev

Решилась проблема сносом и переустановкой libc6-dev и иже с ней.
Всем спасибо огромное!

 

Страница сгенерирована за 0.041 секунд. Запросов: 25.