Компиляция кода cpp в netbeans приводит к ошибкам, как их решить? - PullRequest
0 голосов
/ 26 мая 2010

Я использую NetBeans с MinGW и MYSY make / debugger, но когда я компилирую базовый код cpp и запускаю его, он выдает два ошибки

это код выполненный и вывод! [Alt text] [1] box

#include <iostream>
void main()
{
  cout << "Hello World!" << endl;  
  cout << "Welcome to C++ Programming" << endl;
}

вывод

/usr/bin/make -f nbproject/Makefile-Debug.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `/d/Users/Home/Documents/NetBeansProjects/newApp'
/usr/bin/make  -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/newapp.exe
make[2]: Entering directory `/d/Users/Home/Documents/NetBeansProjects/newApp'
mkdir -p dist/Debug/MinGW-Windows
g++.exe     -o dist/Debug/MinGW-Windows/newapp build/Debug/MinGW-Windows/newmain.o build/Debug/MinGW-Windows/newfile.o build/Debug/MinGW-Windows/main.o  
build/Debug/MinGW-Windows/newfile.o: In function `main':

D:/Users/Home/Documents/NetBeansProjects/newApp/newfile.cpp:5: multiple definition of `main'

build/Debug/MinGW-Windows/newmain.o:D:/Users/Home/Documents/NetBeansProjects/newApp/newmain.c:15: first defined here

build/Debug/MinGW-Windows/main.o: In function `main':

D:/Users/Home/Documents/NetBeansProjects/newApp/main.cpp:13: multiple definition of `main'

build/Debug/MinGW-Windows/newmain.o:D:/Users/Home/Documents/NetBeansProjects/newApp/newmain.c:15: first defined here

collect2: ld returned 1 exit status

make[2]: *** [dist/Debug/MinGW-Windows/newapp.exe] Error 1
make[2]: Leaving directory `/d/Users/Home/Documents/NetBeansProjects/newApp'
make[1]: *** [.build-conf] Error 2
make[1]: Leaving directory `/d/Users/Home/Documents/NetBeansProjects/newApp'
make: *** [.build-impl] Error 2
BUILD FAILED (exit value 2, total time: 1s)

как я могу решить это?

Ответы [ 2 ]

5 голосов
/ 26 мая 2010

Я вижу здесь три вещи, первые две были отмечены Ксавье и Джисмаром, но для объединения:

  1. И D:/Users/Home/Documents/NetBeansProjects/newApp/newfile.cpp, и D:/Users/Home/Documents/NetBeansProjects/newApp/main.cpp определяют main(). Вам нужно будет удалить один из них из вашего проекта.

  2. Вам нужно быть using std::cout и using std::endl.

  3. main() всегда должен возвращать int.

1 голос
/ 26 мая 2010

В вашем проекте есть два разных файла, которые определяют main (). Один называется newfile.cpp, другой называется newmain.c

И, как отмечает предыдущий комментарий, вам нужно будет указать std::cout и std::endl

...