ld

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

ld

Beitrag von mickthebike »

Hallo
:-1: error: collect2: ld returned 1 exit status

Folgende includes werden anscheinend nicht gefunden. Warum?

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <gl\gl.h>
#include <gl\glu.h>

Vielen Dank
Michael
PS: Bin auf Vista64
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Das sind viel zu wenig Infos!
Gib mal mehr Output. Da muss stehen, was dem ld fehlt.
Die includes deuten nicht auf die Verwendung von Qt hin. (-> C++-Forum?)

Wenn du uns mehr Output vom ld gibst, können wir noch mehr Infos brauchen (z.B. die Sourcen, wegen denen es knallt)

Grüße
Franz
HappyEnding
Beiträge: 26
Registriert: 5. März 2009 14:15

Beitrag von HappyEnding »

Kanns sein, dass du das Programm noch offen hattest als du probiert hast es erneut zu compilieren? Da tritt der Fehler naemlich gerne auf.
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

Beitrag von mickthebike »

Nein QTCreator gestartet und gleich debug gedrückt.

ld gibt keine weitere Meldung. Nur diese Zeile in QtCreator.

Vorher hatte ich keine Probleme mit den Headern mit Eclipse. Ich habe aber
einen Grund QtCreator zu verwenden. ( shared lib debug was Eclipse nicht rafft. )

Vielen Dank
Michael
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Unter 'Compile Output' steht definitiv mehr ...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

Beitrag von mickthebike »

g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DAPL=0 -DIBM=1 -DLIN=0 -DWIN_32 -DQT_DLL -DQT_THREAD_SUPPORT -I"..\..\Qt\2009.02\qt\include" -I"..\SDL\include" -I"..\SDK\CHeaders\XPLM" -I"..\..\Qt\2009.02\qt\include\ActiveQt" -I"debug" -I"." -I"..\..\Qt\2009.02\qt\mkspecs\win32-g++" -o debug\main.o main.cpp
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -shared -Wl,--out-implib,debug\.\debug\\libCit­_X_win.xpl.a -o debug\debug\Cit­_X_win.xpl.dll debug/win.o debug/main.o -L"e:\Qt\2009.02\qt\lib" ..\SDK\Libraries\Win ..\SDL\lib -lXPLM -lsdl_image -lSDLmain -lsdl -lopengl32 -lglu32
mingw32-make.exe[1]: Leaving directory `E:/CPP/Cit_X'
E:\Qt\2009.02\mingw\bin\mingw32-make.exe: Leaving directory `E:/CPP/Cit_X'
E:\Qt\2009.02\mingw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: ..\SDK\Libraries\Win: No such file: Permission denied
collect2: ld returned 1 exit status
mingw32-make.exe[1]: *** [debug\debug\Cit­_X_win.xpl.dll] Error 1
E:\Qt\2009.02\mingw\bin\mingw32-make.exe: *** [debug] Error 2
Exited with code 2.
Error while building project Cit_X
When executing build step 'Make'


Hallo
..\SDK\Libraries\Win
dieser Pfad sollte aber stimmen relativ zum Programmordner.
Danke Michael
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wo kommt "..\SDK\Libraries\Win ..\SDL\lib" her? Als Optionen ist das definitiv falsch.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

Beitrag von mickthebike »

Hallo
so sieht die pro Datei aus:
------
QT -= core \
gui
TARGET = Cit_X
TEMPLATE = lib

INCLUDEPATH += ..\SDL\include
INCLUDEPATH += ..\SDK\CHeaders\XPLM

LIBS += ..\SDK\Libraries\Win
LIBS += ..\SDL\lib


win32 {
TARGET = .\debug\Cit­_X_win.xpl
DEFINES += APL=0 IBM=1 LIN=0 WIN_32
LIBS += -lXPLM -lsdl_image -lSDLmain -lsdl -lopengl32 -lglu32
}

unix:!macx {
TARGET = ./debug/Cit­_X_lin.xpl
DEFINES += APL=0 IBM=0 LIN=1
QMAKE_CFLAGS += -fstack-protector
QMAKE_CXXFLAGS += -fstack-protector
}

macx {
TARGET = ./debug/Cit­_X_mac.xpl
DEFINES += APL=1 IBM=0 LIN=0
QMAKE_LFLAGS += -flat_namespace -undefined suppress
# This line defines for which architectures we build.
CONFIG += x86 ppc
}

SOURCES += win.cpp \
main.cpp

HEADERS +=

--------
SDL, XPLM sowie OpenGL brauche ich.
Weiterhin danke
Michael
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Code: Alles auswählen

LIBS += ..\SDK\Libraries\Win
LIBS += ..\SDL\lib
Und was soll das?

http://doc.trolltech.com/4.5/qmake-vari ... .html#libs
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

Beitrag von mickthebike »

Danke Christian
warum den Fehler:
E:\Qt\2009.02\mingw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot find -lXPLM

Es sieht nun so aus:

INCLUDEPATH += E:\CPP\SDL\include E:\CPP\SDK\CHeaders\XPLM E:\CPP\MinGW\include

LIBS += E:\CPP\SDK\Libraries\Win\XPLM.lib E:\CPP\SDL\lib\SDL_image.dll E:\CPP\SDL\lib\SDLmain.lib E:\CPP\SDL\lib\SDL.lib



win32 {
TARGET = .\debug\Cit­_X_win.xpl
DEFINES += APL=0 IBM=1 LIN=0 WIN_32
LIBS += -lXPLM -lsdl_image -lSDLmain -lsdl -lopengl32 -lglu32
}


Vielen Dank
Michael
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

Du gibst ja auch nirgends vor, dass die Libraries unter "E:\CPP\SDK\Libraries\Win\" gesucht werden müssen... wie sollte also

Code: Alles auswählen

win32 {
...
LIBS += -lXPLM ....
} 
gefunden werden? Besser, du gibst (Such-)Pfade und Libraries getrennt vor..
mickthebike
Beiträge: 13
Registriert: 12. Mai 2009 07:32

Beitrag von mickthebike »

Danke was muss ich denn oben noch ergänzen?
Antworten