Seite 1 von 1

ld

Verfasst: 16. Mai 2009 17:52
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

Verfasst: 16. Mai 2009 18:19
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

Verfasst: 16. Mai 2009 19:21
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.

Verfasst: 16. Mai 2009 23:09
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

Verfasst: 16. Mai 2009 23:32
von Christian81
Unter 'Compile Output' steht definitiv mehr ...

Verfasst: 17. Mai 2009 07:32
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

Verfasst: 17. Mai 2009 09:59
von Christian81
Wo kommt "..\SDK\Libraries\Win ..\SDL\lib" her? Als Optionen ist das definitiv falsch.

Verfasst: 17. Mai 2009 11:23
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

Verfasst: 17. Mai 2009 11:24
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

Verfasst: 17. Mai 2009 12:07
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

Verfasst: 18. Mai 2009 09:12
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..

Verfasst: 18. Mai 2009 09:32
von mickthebike
Danke was muss ich denn oben noch ergänzen?