Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

H5::

Treue Seele

Beiträge: 368

Wohnort: Kiel

  • Private Nachricht senden

11

28.05.2013, 02:14

Quellcode

1
2
3
4
5
6
7
8
9
extern "C" int _stdcall func2(int, int, char*);

32bit: _func2@12
64bit: func2

extern "C" int _cdecl func2(int, int, char*);

32bit: _func2
64bit: func2

Aus dem oben verlinktem Beitrag.

Linker Tools Warning LNK4098
:love: := Go;

12

29.05.2013, 13:34

Wär echt cool wennst mir die GLFW3 Binaries geben könntest. danke :)

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

13

29.05.2013, 14:29

Versionen für 64Bit, Statische RT und Debug.
»Spiele Programmierer« hat folgende Datei angehängt:
  • GLFW3_Binaries.7z (537,88 kB - 50 mal heruntergeladen - zuletzt: 02.05.2024, 07:43)

14

30.05.2013, 00:24

Vielen Dank, echt nett von dir :)

Leider funktioniert es aber immernochnicht :(
Wenn ich glfw364sD.lib nehme kommt folgender Fehler:

C-/C++-Quelltext

1
2
3
4
5
6
1>------ Erstellen gestartet: Projekt: Shooter, Konfiguration: Debug Win32 ------
1>Main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_glfwSwapBuffers" in Funktion "_main".
1>Main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_glfwCreateWindow" in Funktion "_main".
1>Main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_glfwInit" in Funktion "_main".
1>C:\Users\Sami\Cpp\Game\Shooter\Debug\Shooter.exe : fatal error LNK1120: 3 nicht aufgelöste externe Verweise.
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


und bei glfw3sD.lib kommt:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
1>------ Erstellen gestartet: Projekt: Shooter, Konfiguration: Debug Win32 ------
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetPixelFormat@12" in Funktion "__glfwCreateContext".
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DescribePixelFormat@16" in Funktion "__glfwCreateContext".
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ChoosePixelFormat@8" in Funktion "__glfwCreateContext".
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetDC@4" in Funktion "__glfwCreateContext".
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ReleaseDC@8" in Funktion "__glfwDestroyContext".
1>glfw3sD.lib(wgl_context.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SwapBuffers@4" in Funktion "__glfwPlatformSwapBuffers".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetWindowPos@28" in Funktion "__glfwPlatformCreateWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__RegisterClassW@4" in Funktion "_registerWindowClass".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__LoadIconW@8" in Funktion "_registerWindowClass".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__LoadCursorW@8" in Funktion "_registerWindowClass".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DefWindowProcW@16" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__TrackMouseEvent@4" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ReleaseCapture@0" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetCapture@4" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetWindowLongW@12" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetWindowLongW@8" in Funktion "_windowProc@16".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ClipCursor@4" in Funktion "_updateClipRect".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ClientToScreen@8" in Funktion "_updateClipRect".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetClientRect@8" in Funktion "_updateClipRect".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ShowCursor@4" in Funktion "_captureCursor".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__PeekMessageW@20" in Funktion "_translateKey".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetMessageTime@0" in Funktion "_translateKey".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__MapVirtualKeyW@8" in Funktion "_translateKey".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ScreenToClient@8" in Funktion "_createWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetCursorPos@4" in Funktion "_createWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__CreateWindowExW@48" in Funktion "_createWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__AdjustWindowRectEx@16" in Funktion "_getFullWindowSize".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DestroyWindow@4" in Funktion "_destroyWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetWindowTextW@8" in Funktion "__glfwPlatformSetWindowTitle".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ShowWindow@8" in Funktion "__glfwPlatformIconifyWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetFocus@4" in Funktion "__glfwPlatformShowWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetForegroundWindow@4" in Funktion "__glfwPlatformShowWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__BringWindowToTop@4" in Funktion "__glfwPlatformShowWindow".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetAsyncKeyState@4" in Funktion "__glfwPlatformPollEvents".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DispatchMessageW@4" in Funktion "__glfwPlatformPollEvents".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__TranslateMessage@4" in Funktion "__glfwPlatformPollEvents".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__WaitMessage@0" in Funktion "__glfwPlatformWaitEvents".
1>glfw3sD.lib(win32_window.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetCursorPos@8" in Funktion "__glfwPlatformSetCursorPos".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__ChangeDisplaySettingsExW@20" in Funktion "__glfwSetVideoMode".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__DeleteDC@4" in Funktion "__glfwPlatformGetMonitors".
1>glfw3sD.lib(win32_gamma.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__DeleteDC@4".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetDeviceCaps@8" in Funktion "__glfwPlatformGetMonitors".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__CreateDCW@16" in Funktion "__glfwPlatformGetMonitors".
1>glfw3sD.lib(win32_gamma.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__CreateDCW@16".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__EnumDisplayDevicesW@16" in Funktion "__glfwPlatformGetMonitors".
1>glfw3sD.lib(win32_gamma.obj) : error LNK2001: Nicht aufgelöstes externes Symbol "__imp__EnumDisplayDevicesW@16".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__EnumDisplaySettingsExW@16" in Funktion "__glfwPlatformGetMonitorPos".
1>glfw3sD.lib(win32_monitor.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__EnumDisplaySettingsW@12" in Funktion "__glfwPlatformGetVideoModes".
1>glfw3sD.lib(win32_init.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SystemParametersInfoW@16" in Funktion "__glfwPlatformInit".
1>glfw3sD.lib(win32_init.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__UnregisterClassW@8" in Funktion "__glfwPlatformTerminate".
1>glfw3sD.lib(win32_gamma.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__GetDeviceGammaRamp@8" in Funktion "__glfwPlatformGetGammaRamp".
1>glfw3sD.lib(win32_gamma.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__SetDeviceGammaRamp@8" in Funktion "__glfwPlatformSetGammaRamp".
1>C:\Users\Sami\Cpp\Game\Shooter\Debug\Shooter.exe : fatal error LNK1120: 49 nicht aufgelöste externe Verweise.
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========


Tut mir leid, dass ich euch die ganze Zeit wegen den Sachen fragen muss, aber ich selbst kenn mich mit solchen Sachen noch nicht so genau aus.

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

15

30.05.2013, 00:37

Vermutlich linkst du MSVC Runtime nicht statisch und außerdem hast du ein 32Bit Projekt. "glfw364sD.lib" ist deshalb die falsche Wahl.

H5::

Treue Seele

Beiträge: 368

Wohnort: Kiel

  • Private Nachricht senden

16

30.05.2013, 00:45

Was übrigens auch groß auf seinem Screenshot zu sehen war, aber ich halte mich mal ab jetzt raus. Nur noch so viel, es hilft die Fehlermeldung richtig zu lesen und nach zu schlagen.

Zitat

1>Main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_glfwSwapBuffers" in Funktion "_main".

Quellcode

1
2
3
4
extern "C" int _cdecl func2(int, int, char*);

32bit: _func2
64bit: func2

Eventuell hilft aber auch der Blick auf den >> _ << vor main usw.
»H5::« hat folgendes Bild angehängt:
  • 053013_012834_AM.jpg
:love: := Go;

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »H5::« (30.05.2013, 01:30)


17

30.05.2013, 02:26

Dass die glfw364 falsch is hab ich mir scho dacht kabt, aba halt mal ausprobiert weil die andre ned klappt hat ^^

Zum statisch linken muss ich doch nur die Laufzeitbibliothek aus MT bzw MTd stellen, oder? Des hab ich eigentlich scho gmacht ?(

H5::

Treue Seele

Beiträge: 368

Wohnort: Kiel

  • Private Nachricht senden

18

30.05.2013, 03:18

Solltest du dein Projekt nicht auf einen x64 Build umstellen können so wirst du die Libs nicht verwenden können. Dass die DLL.lib mehr Fehler wirft ist richtig.

Ich hänge dir mal ein GLFW3 win32 Build (Statische Bibliothek, mit dynamischer Runtime /MD /MDd). Jedoch habe ich nicht deine Visual Studio Version, deswegen könnte es auch nicht funktionieren. Aber versuchen kannst du es ja mal.

Im Dump der win32 Lib kannst du auch sehen, dass die von dir vermissten Funktionen in dieser Lib vorhanden sind. Zum Vergleich auch das einer x64 Lib.

Zitat

Zum statisch linken muss ich doch nur die Laufzeitbibliothek aus MT bzw MTd stellen, oder? Des hab ich eigentlich scho gmacht
Nur zur Sicherheit, Es gibt statische und dynamische Laufzeitbibliotheken. Die haben nichts damit zu tun ob z.B. glfw3.lib statisch oder eine Export Bibliothek( für eine DLL dynamisch ) verwendet wird.
»H5::« hat folgende Dateien angehängt:
  • GLFW3.zip (156,26 kB - 63 mal heruntergeladen - zuletzt: 16.05.2024, 14:57)
  • glfw3 DUMP Win32.txt (12,43 kB - 475 mal heruntergeladen - zuletzt: 06.05.2024, 01:26)
  • glfw x64.txt (12,09 kB - 159 mal heruntergeladen - zuletzt: 03.05.2024, 00:44)
:love: := Go;

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »H5::« (30.05.2013, 03:41)


Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

19

30.05.2013, 09:32

Zitat

Ich hänge dir mal ein GLFW3 win32 Build

Das war bereits in meinen 7z drin. Alle Acht "Kombinationen" waren da schon als Binaries für VS2010 dabei. ;)
Man muss halt nur die richtige Lib auswählen. In seinen Fall wohl "GLFW3D.lib" bzw. "GFLW3.lib".
Du tust so, als ob ich total bescheuert wäre und ihm irgendeine hoffnungslos falsche Version angehängt hätte.

H5::

Treue Seele

Beiträge: 368

Wohnort: Kiel

  • Private Nachricht senden

20

30.05.2013, 13:57

Du tust so, als ob ich total bescheuert wäre und ihm irgendeine hoffnungslos falsche Version angehängt hätte.
Hui, du gehst aber leicht an die Decke, du solltest aufpassen, dass sich da nicht mal jemand irgendwann einen Spaß draus macht. Solltest du jedoch ein Problem mit meinem Verhalten oder mir haben, so schreibe mir bitte eine PM, so etwas hat hier wirklich nichts zu suchen.

Es tut mir auch sehr leid dich damit verletzt zu haben ihm aus Versehen die Libs erneut zu schicken, ich lade lediglich nicht alles runter sondern hatte mich nur auf deinen Beitrag verlassen. Dieser klang im Zusammenhang mit seinem weiteren Fehler nicht so als ob ihm die nötigen Libs vorlagen.

Aber hey, lieber einmal zu viel helfen als einmal zu wenig. Und das wollten wir doch beide, also kein Grund für Feindseligkeiten. :)

Tipp:

Quellcode

1
#pragma comment( lib, "glfw3.lib" )
Du kannst mir diesem Pragma arbeiten solange du VS benutzt, macht das Experimentieren mit den Libs etwas leichter. Auch passiert es dann nicht, dass man schnell mal ausversehen das: %(AdditionalDependencies) bei den zusätzlichen Bibliotheken löscht, das auch zu einem der Fehler von dir führen könnte.
:love: := Go;

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »H5::« (30.05.2013, 14:22)


Werbeanzeige