Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:22 Der er 19 kommentarer og
1 løsning

VC++ fejler ved linking :(

Hejsa...

Hver gang jeg prøver at linke mit program får jeg denne fejl:

LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/WinMain.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

Håber i kan hjælpe



Ralle
Avatar billede wisen Nybegynder
08. november 2002 - 12:24 #1
Du mangler en main procedure i dit program... prøv at sætte følgene ind:

int main(int argc, char* argv[])
{
    return 0;
}
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:26 #2
Nej det er ikke det for compileingen går glat, men jeg ikke ikke linke.

Desuden har jeg en WinMain()
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:30 #3
Jeg har prøvet at genindstallere VC++ (ver. 6.0 standard) som jeg for 2 uger siden ikke havde problemmer med (har lige lagt det ind igen...)
Avatar billede wisen Nybegynder
08. november 2002 - 12:33 #4
Hmm.. det havde jeg overset... bruger du MFC... prøv lige at se hvad der står i "Project Settings->General->Microsoft Foundation Classes"...
Avatar billede chries Nybegynder
08. november 2002 - 12:36 #5
du har oprettet et Win32 console project som bruger main. WinMain bruges i et Win32 application (når du file->new'er et project).
Compilering går godt, fordi det ikke er noget galt i at have en "function" der hedder WinMain. Men linkeren forventer at finde main som start entry.
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:41 #6
Jeg får også fejlen ved sådan en kode her:

#include <iostream.h>
#include <conio.h>

int main()
{
  cout << "Hey";
  getche();

  return 0;
}
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:43 #7
Jeg tror det er en fejl i linking filen...
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:43 #8
wisen jeg bruger ikke MFC
Avatar billede chries Nybegynder
08. november 2002 - 12:44 #9
prøv med:
int main(int argv, char** argc)

http://www.gamecoding.org.uk/forum/viewthread.php?tid=108
Avatar billede chries Nybegynder
08. november 2002 - 12:45 #10
fandt også det her:
Question: I try to compile an app using ClanLib under Visual C++ and it gets unresolved external symbol _main...
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main


Answer: You have to create a Win32 Application project and not a Win32 Console Application. Otherwise, add the linker option "/entry:WinMainCRTStartup" to your project options.
Avatar billede exp-ralle Nybegynder
08. november 2002 - 12:56 #11
Yes, yes nu virker det.
Det var dette der hjalp mig:

Answer: You have to create a Win32 Application project and not a Win32 Console Application. Otherwise, add the linker option "/entry:WinMainCRTStartup" to your project options.

Takker chries
Avatar billede exp-ralle Nybegynder
08. november 2002 - 13:02 #12
Men kan nogen sige mig hvorfor jeg ikke kan bruge
endl

i VC++?

den siger:

error C2065: 'endl' : undeclared identifier
Avatar billede chries Nybegynder
08. november 2002 - 13:07 #13
Jeg går ud fra du ikke mangler
#include <iostream.h>
?
Avatar billede exp-ralle Nybegynder
08. november 2002 - 13:11 #14
Det gør jeg ikke...
Avatar billede chries Nybegynder
08. november 2002 - 13:12 #15
prøv at vise de par linier i området det går galt ved ?
Avatar billede exp-ralle Nybegynder
08. november 2002 - 13:14 #16
der står bare cout << "HeY, test" << endl;
Avatar billede chries Nybegynder
08. november 2002 - 13:15 #17
og hvis du fjerner endl, klager den ikke over cout ?
Avatar billede exp-ralle Nybegynder
08. november 2002 - 13:18 #18
Jeg har lavet det om til "\n" og det virker fint...
Den siger noget med at den ikke kender udtrykket endl.
Avatar billede chries Nybegynder
08. november 2002 - 13:21 #19
Underlig, jeg er på bar bund. Det eneste jeg kan forslå er at oprette et nyt projekt (simple win32 application) og kopierer/flyt koden over i.
Avatar billede exp-ralle Nybegynder
08. november 2002 - 13:22 #20
ok, tak tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester