1 / 1 / 2
Регистрация: 18.04.2013
Сообщений: 69
1

В чем причина ошибки линковки в NetBeans (gcc 4.9)?

20.01.2016, 01:21. Показов 2352. Ответов 9

Товарищи! помогите пожалуйста!! Подскажите новичку в С\С++ где собака зарылась:
ОС Debian
IDE NetBeans
компилятор gcc 4.9
При попытке компиляции выдает вот такую штуку:


"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: вход в каталог «/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++»
"/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/_____2____c__
make[2]: вход в каталог «/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++»
mkdir -p dist/Debug/GNU-Linux-x86
g++ -o dist/Debug/GNU-Linux-x86/_____2____c__ build/Debug/GNU-Linux-x86/main.o build/Debug/GNU-Linux-x86/main1.o
build/Debug/GNU-Linux-x86/main1.o: In function `main':
/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++/main1.cpp:13: multiple definition of `main'
build/Debug/GNU-Linux-x86/main.o:/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++/main.cpp:16: first defined here
collect2: error: ld returned 1 exit status
nbproject/Makefile-Debug.mk:63: ошибка выполнения рецепта для цели «dist/Debug/GNU-Linux-x86/_____2____c__»
make[2]: *** [dist/Debug/GNU-Linux-x86/_____2____c__] Ошибка 1
make[2]: выход из каталога «/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++»
nbproject/Makefile-Debug.mk:60: ошибка выполнения рецепта для цели «.build-conf»
make[1]: *** [.build-conf] Ошибка 2
make[1]: выход из каталога «/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++»
nbproject/Makefile-impl.mk:39: ошибка выполнения рецепта для цели «.build-impl»
make: *** [.build-impl] Ошибка 2
тыкните носом что не так.

текст программы:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
#include <cstdlib>
#include <math.h>
using namespace std;
 
int main()
{
    double x,y,f,a,b;
    int k;
    cout <<"Vvedite x "; cin >> x;
    cout <<"Vvedite y "; cin >> y;
    cout << "Viberite f: 1 - sh(x), 2 - x^2, 3 - exp(x) "; cin >> k;
    switch(k)
    {
        case 1: f=sinh(x); break;
        case 2: f=pow(x,2); break;
        case 3: f=exp(x); break;
        default: cout <<"Ne vybrana funkciya"; return 1;
    }
    a=pow(x,3);
    if (a>0) {
        b=log(pow(f,3));
    } else
    if (a<0) {
        b=tan(a)+f;
    } else b=pow(fabs((pow(y,3)-a)), 1.0/3);
    cout << "Resultat = "<< b << endl;
    
    
}
Помогите разобраться, ну очень нужно.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.01.2016, 01:21
Ответы с готовыми решениями:

В чем причина ошибки?
Код int main() { char arr; scanf(&quot;%s %s&quot;, &amp;arr, &amp;arr); printf(&quot;%s\n\n&quot;,...

В чем причина ошибки?
помогите разобраться почему выходит ошибка? #include &lt;iostream.h&gt; #include &lt;string.h&gt; #include...

В чем причина ошибки
Я решил написать математическую программу (график функции) Создал 2 компонента Image (1 для...

В чем причина ошибки istream
П.5.18.Правил Запрещено размещать задания и решения в виде картинок и других файлов с их текстом.

9
2431 / 1831 / 404
Регистрация: 15.12.2013
Сообщений: 8,165
20.01.2016, 01:28 2
Цитата Сообщение от bander313 Посмотреть сообщение
Помогите разобраться, ну очень нужно.
Скомпилируйте в консоли и будет вам счастье.
0
1 / 1 / 2
Регистрация: 18.04.2013
Сообщений: 69
20.01.2016, 01:34  [ТС] 3
пробовал, те же грабли:


gcc main1.cpp -lm

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/tmp/user/1000/ccV1Iml1.o: In function `main':
main1.cpp:(.text+0x1a): undefined reference to `std::cout'
main1.cpp:(.text+0x1f): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
main1.cpp:(.text+0x2e): undefined reference to `std::cin'
main1.cpp:(.text+0x33): undefined reference to `std::istream::operator>>(double&)'
main1.cpp:(.text+0x43): undefined reference to `std::cout'
main1.cpp:(.text+0x48): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
main1.cpp:(.text+0x57): undefined reference to `std::cin'
main1.cpp:(.text+0x5c): undefined reference to `std::istream::operator>>(double&)'
main1.cpp:(.text+0x6c): undefined reference to `std::cout'
main1.cpp:(.text+0x71): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
main1.cpp:(.text+0x80): undefined reference to `std::cin'
main1.cpp:(.text+0x85): undefined reference to `std::istream::operator>>(int&)'
main1.cpp:(.text+0xff): undefined reference to `std::cout'
main1.cpp:(.text+0x104): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
main1.cpp:(.text+0x1ea): undefined reference to `std::cout'
main1.cpp:(.text+0x1ef): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)'
main1.cpp:(.text+0x201): undefined reference to `std::ostream::operator<<(double)'
main1.cpp:(.text+0x20c): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)'
main1.cpp:(.text+0x212): undefined reference to `std::ostream::operator<<(std::ostream& (*)(std::ostream&))'
/tmp/user/1000/ccV1Iml1.o: In function `__static_initialization_and_destruction_0(int, int)':
main1.cpp:(.text+0x244): undefined reference to `std::ios_base::Init::Init()'
main1.cpp:(.text+0x259): undefined reference to `std::ios_base::Init::~Init()'
collect2: error: ld returned 1 exit status
Добавлено через 36 секунд
только еще не понятнее
0
В астрале
Эксперт С++
8048 / 4805 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
20.01.2016, 08:49 4
bander313, Не gcc, а g++.
А изначально проблема в том, что в проекте два файла main.cpp и main1.cpp, в каждом из которых определена функция main.
1
Evg
Эксперт CАвтор FAQ
21264 / 8280 / 637
Регистрация: 30.03.2009
Сообщений: 22,635
Записей в блоге: 30
20.01.2016, 09:52 5
Тут в общем-то русским языком всё написано и даже номера строк показаны

/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++/main1.cpp:13: multiple definition of `main'
<...>/home/andre/Документы/универ/семестр 3/C++/Laba 2/лаба 2 по C++/main.cpp:16: first defined here
1
1 / 1 / 2
Регистрация: 18.04.2013
Сообщений: 69
20.01.2016, 10:03  [ТС] 6
То есть, из за того что два файла ничего не работает, спасибо проверю, и отпишу.
0
Evg
Эксперт CАвтор FAQ
21264 / 8280 / 637
Регистрация: 30.03.2009
Сообщений: 22,635
Записей в блоге: 30
20.01.2016, 10:14 7
Лучший ответ Сообщение было отмечено bander313 как решение

Решение

Цитата Сообщение от bander313 Посмотреть сообщение
из за того что два файла ничего не работает
Не работает, из-за того, что в проекте два тела функции main. Количество файлов тут не при чём
1
1 / 1 / 2
Регистрация: 18.04.2013
Сообщений: 69
20.01.2016, 10:24  [ТС] 8
Спасибо за уточнение! то есть меняю имя функции и все ок? Спасибо!
0
Evg
Эксперт CАвтор FAQ
21264 / 8280 / 637
Регистрация: 30.03.2009
Сообщений: 22,635
Записей в блоге: 30
20.01.2016, 10:29 9
Цитата Сообщение от bander313 Посмотреть сообщение
то есть меняю имя функции и все ок?
Да я откуда знаю. Я ж не знаю, что у тебя в проекте. Есть точная диагностика компилятора, на которую я тебе показал. И возможны миллион причин, по которым такая ошибка может возникнуть. Не видя твоего полного проекта, можно только гадать, что там случилось. Прежде, чем махать топором, надо разобраться, почему у тебя в проекте две функции main
1
1 / 1 / 2
Регистрация: 18.04.2013
Сообщений: 69
20.01.2016, 11:36  [ТС] 10
Мдя, ощущаю себя шариком из МФ "простоквашино" Большое спасибо! разобрался где грабли! буду внимательнее! Большое спасибо!

Добавлено через 1 час 6 минут
Цитата Сообщение от Evg Посмотреть сообщение
Прежде, чем махать топором, надо разобраться, почему у тебя в проекте две функции main
Сам незнаю почему сразу не обратил внимание на это, спасибо что тыкнули носом. был ошибка только в этом, сейчас все подключил и работает!

Похоже вопрос решен, можно закрывать
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.01.2016, 11:36
Помогаю со студенческими работами здесь

Не понимаю, в чём причина ошибки
Помоги с решение и объясните проблему, справа в файле как должно выглядеть, но не получается так...

В чем причина ошибки no match for?
Видает ошибку no match for 'operator=' in 'C = RyadokIdentifier::operator+(const...

В чем причина ошибки подключения к БД
Подскажите по установке базы данных на сервер при установке техподержка указала название базы...

В чем причина выдачи ошибки компиляции?
Почему компилятор выдаёт ошибку ? Ошибка 1 error C2665: System::Console::WriteLine: ни одна из 19...

В чем причина ошибки extra qualification
Видает ошибку extra qualification 'RyadokIdentifier::' on member 'Lowercase' в чем причина...

В чем причина ошибки запуска gulp ?
Открыл старые уроки по верстке там используют gulp 2 часа танцев с бубном не привел не к чему. В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru