Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

SFML problem z linkowaniem statycznym.

Ostatnio zmodyfikowano 2016-03-01 22:20
Autor Wiadomość
MatrixKiler
Temat założony przez niniejszego użytkownika
SFML problem z linkowaniem statycznym.
» 2016-02-23 21:15:55
Mam problem... Kiedy linkuje bibliotekę SFML 2.3.2 dynamicznie (w linker settings w pisuje miedzy innymi sfml-grahics-d) wszystko działa ale tylko w CB bo gdy chce uruchomić przez plik .exe wyskakuje mi "Aplikacja nie została uruchomiona właściwie (0xc000007b)" więc sobie pomyślałem że zlinkuje statycznie.
Wpisałem w #defines SFML_STATIC zmieniłem linker na sfml-graphics-s-d (w Release także odpowiednio sfml-graphics-s) i nie działa w ogóle.

CB 16.01 GCC 4.8.1 32-bit

(Wklejam logi tak po prostu bo nie wiem jak to zrobić "ładnie" jak ktoś wie to przy okazji może napisać)


-------------- Build: Debug in Temptale (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -LF:\C++\SFML-2.3.2\lib -o Temptale.exe obj\Debug\main.o   -lsfml-graphics-s-d -lsfml-window-s-d -lsfml-system-s-d -mwindows
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderWindow.cpp.obj): In function `ZNK2sf12RenderWindow7captureEv':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderWindow.cpp:92: undefined reference to `glReadPixels@28'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget5clearERKNS_5ColorE':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:105: undefined reference to `glClearColor@16'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:106: undefined reference to `glClear@4'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget4drawEPKNS_6VertexEjNS_13PrimitiveTypeERKNS_12RenderStatesE':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:275: undefined reference to `glVertexPointer@16'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:276: undefined reference to `glColorPointer@16'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:277: undefined reference to `glTexCoordPointer@16'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:286: undefined reference to `glDrawArrays@12'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget12pushGLStatesEv':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:310: undefined reference to `glGetError@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:320: undefined reference to `glPushClientAttrib@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:321: undefined reference to `glPushAttrib@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:323: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:324: undefined reference to `glPushMatrix@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:325: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:326: undefined reference to `glPushMatrix@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:327: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:328: undefined reference to `glPushMatrix@0'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget11popGLStatesEv':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:340: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:341: undefined reference to `glPopMatrix@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:342: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:343: undefined reference to `glPopMatrix@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:344: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:345: undefined reference to `glPopMatrix@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:347: undefined reference to `glPopClientAttrib@0'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:348: undefined reference to `glPopAttrib@0'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget13resetGLStatesEv':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:373: undefined reference to `glDisable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:374: undefined reference to `glDisable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:375: undefined reference to `glDisable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:376: undefined reference to `glDisable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:377: undefined reference to `glEnable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:378: undefined reference to `glEnable@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:379: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:380: undefined reference to `glEnableClientState@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:381: undefined reference to `glEnableClientState@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:382: undefined reference to `glEnableClientState@4'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget16applyCurrentViewEv':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:418: undefined reference to `glViewport@16'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:421: undefined reference to `glMatrixMode@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:422: undefined reference to `glLoadMatrixf@4'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:425: undefined reference to `glMatrixMode@4'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget14applyBlendModeERKNS_9BlendModeE':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:443: undefined reference to `glBlendFunc@8'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(RenderTarget.cpp.obj): In function `ZN2sf12RenderTarget14applyTransformERKNS_9TransformE':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/RenderTarget.cpp:484: undefined reference to `glLoadMatrixf@4'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(GLCheck.cpp.obj): In function `ZN2sf4priv12glCheckErrorEPKcjS2_':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/GLCheck.cpp:41: undefined reference to `glGetError@0'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(Texture.cpp.obj): In function `checkMaximumTextureSize':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:64: undefined reference to `glGetIntegerv@8'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(Texture.cpp.obj): In function `ZN2sf7TextureD2Ev':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:112: undefined reference to `glDeleteTextures@8'
F:\C++\SFML-2.3.2\lib/libsfml-graphics-s-d.a(Texture.cpp.obj): In function `ZN2sf7Texture6createEjj':
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:154: undefined reference to `glGenTextures@8'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:181: undefined reference to `glBindTexture@8'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:182: undefined reference to `glTexImage2D@36'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:183: undefined reference to `glTexParameteri@12'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:184: undefined reference to `glTexParameteri@12'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:185: undefined reference to `glTexParameteri@12'
D:/sfml-release/_Sources/SFML/src/SFML/Graphics/Texture.cpp:186: undefined reference to `glTexParameteri@12'
Process terminated with status 1 (0 minute(s), 0 second(s))
50 error(s), 0 warning(s) (0 minute(s), 0 second(s))
 
P-145231
Gibas11
» 2016-02-23 22:31:04
Przy linkowaniu statycznym powinieneś też statycznie podlinkować biblioteki OGL, w każdym razie na ich brak wskazuje log.
P-145234
MatrixKiler
Temat założony przez niniejszego użytkownika
Biblioteki OpenGL
» 2016-02-24 14:14:08
W takim razie pytanko czy są one zawarte w SFML (patrzyłem w folderze lib nie ma nic o "nazwie" ogl ale mogę czegoś nie wiedzieć) jeśli tak to jak sie nazywają (co mam wpisac w linker )i mam rozumieć że linkuje tak jak inne z tym -s?
P-145248
Gabes
» 2016-02-25 02:18:23
Jak nie ma jak jest:
CodeBlocks/MinGW/lib/libopengl32.a
CodeBlocks/MinGW/include/GL/gl.h

W Linker settings wpisz libopengl32.a lub opengl32
P-145275
MatrixKiler
Temat założony przez niniejszego użytkownika
cd.
» 2016-02-25 19:24:25
Więc tak. Wpisałem to libopengl32.a  w Linker settings->Link libraries.
W Search directories wpisałem folder lib w MinGW.  (Wydaje mi sie ze tak trzeba było ale jak nie to powiedzcie)
Gdy to zrobiłem podczas włączanie .exe wyskakują 4 okienka (po sobie nie wszystkie naraz) że brakuje libgcc_s_sjli-1.dll (dwa razy) i libstdc++-6.dll (też dwa razy ?!)
Ściągnąłem je z netu i wrzuciłem do folderu z .exe...
I znowu taka sama akcja tylko z bibliotekami libgcc_s_sjlj-1.dll i libgcc_s_dw2-1.dll (co ciekawe to pierwsze wyskakuje 3 razy).
Ponownie ściągam je z netu i odpalam .exe a tam znowu "Aplikacja nie została uruchomiona poprawnie ...".

Po wrzuceniu tych dll-ek nie da się skompilować projektu w CB. ;(
Jakieś pomysły? Czy nie ściągać ich z netu tylko je znowu jakoś zlinkować?
Błagam o pomoc. :)
P-145301
1aam2am1
» 2016-02-25 19:35:40
Release
Release
Debug
Debug
P-145302
Gibas11
» 2016-02-25 19:42:23
Te dll'ki są w twoim folderze MinGW, weź je stamtąd.
P-145303
MatrixKiler
Temat założony przez niniejszego użytkownika
Nie rozumiem xD
» 2016-02-25 20:07:20
@1aam2am1 Mam wpisać to wszystko co ty masz?
@Gibas11 Mam je zlinkować? bo w folderze MinGW są tylko  *.a nie ma .dll

Dzięki za odpowiedzi.
P-145308
« 1 » 2
  Strona 1 z 2 Następna strona