[C++] Nicht aufgelöstes externes Symbol

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [C++] Nicht aufgelöstes externes Symbol

      Hey leute, hab ein kleines Problem das mir jetzt schon seit 2 Tagen auf die Nerven geht.
      Unzwar bekomme ich immer den Error "1>Aimbot.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_vec3_origin"." & 1>Aimbot.obj : error LNK2001: Nicht aufgelöstes externes Symbol "_AnglesToAxis".
      Ich versteh den Error nicht ganz, ich habe die Header wo dafür benötigt werden included.
      Hoffe mal das einer von euch mir dabei helfen kann :).

      C-Quellcode

      1. #include "client.h"
      2. #include "vars.h"
      3. #include "memory.h"
      4. #include "utils.h"
      5. #include "config.h"
      6. #include "Aimbot.h"
      7. void VectorToViewangles(float *fEntTarg, float &fAngleX, float &fAngleY)
      8. {
      9. cg_state_t cg;
      10. vec3_t vecEntity, vecAngle;
      11. VectorSubtract(fEntTarg,cg.view.origin, vecEntity);
      12. VectorAngles(vecEntity, vecAngle);
      13. vecAngle[PITCH] = -vecAngle[PITCH];
      14. if(vecAngle[YAW] > 180.0f)
      15. vecAngle[YAW] -= 360.0f;
      16. else if(vecAngle[YAW] < -180.0f)
      17. vecAngle[YAW] += 360.0f;
      18. if(vecAngle[PITCH] > 180.0f)
      19. vecAngle[PITCH] -= 360.0f;
      20. else if(vecAngle[PITCH] < -180.0f)
      21. vecAngle[PITCH] += 360.0f;
      22. AnglesToAxis(vecAngle, cg.view.refdef.viewaxis ); // <-- Hier tritt der Fehler auf
      23. vecAngle[YAW] -= cg.predictedPlayerState.viewangles[YAW];
      24. if(vecAngle[YAW] > 180.0f)
      25. vecAngle[YAW] -= 360.0f;
      26. else if(vecAngle[YAW] < -180.0f)
      27. vecAngle[YAW] += 360.0f;
      28. vecAngle[PITCH] -= cg.predictedPlayerState.viewangles[PITCH];
      29. if(vecAngle[PITCH] > 180.0f)
      30. vecAngle[PITCH] -= 360.0f;
      31. else if(vecAngle[PITCH] < -180.0f)
      32. vecAngle[PITCH] -= 360.0f;
      33. fAngleX = vecAngle[YAW];
      34. fAngleY = vecAngle[PITCH];
      35. }
      36. //======================================================================
      37. float AimbotGetDistance( vec3_t origin ) // Und hier der anderer
      38. {
      39. cg_state_t cg;
      40. vec3_t vector;
      41. VectorSubtract( origin,cg.view.origin, vector );
      42. return ( sqrt( vector[0] * vector[0] + vector[1] * vector[1] + vector[2] * vector[2] ) );
      43. }
      Alles anzeigen
    • Die Fehlermeldung besagt, dass du die Funktion deklariert, aber nicht definiert hast. D.h. die Headerdatei ist (vermutlich) richtig eingebunden, enthält aber nur die Deklaration, während die zugehörige Quelltextdatei mit der Definition fehlt.

      Wenn es sich um eine Bibliothek handelt, kann es darüber hinaus sein, dass die Definition nur in Binärform (also als .lib Datei) vorliegt. Einbinden kannst du die dann über die Projekteigenschaften --> Linker --> Zusätzliche Abhängigkeiten oder alternativ folgendes irgendwo in den Quellcode:

      C-Quellcode

      1. #pragma comment(lib, "datei.lib")
    • @Jusonex Ich benutzt Visual C++ 2010 Express, dort finde ich diese Einstellungen nicht.
      Ich nutze die SDK des Programmes. Es ist die Datei cg_local.h included die alle anderen dateien wo ich benötige hinzufügt.
      In diesem Fall benötige ich die q_math.h, wo ich auch direkt included habe, doch der Fehler tritt immer noch auf.

      C-Quellcode

      1. // q_math.h
      2. void AnglesToAxis( const vec3_t angles, mat3_t axis );
      3. // q_math.c
      4. void AnglesToAxis( const vec3_t angles, mat3_t axis )
      5. {
      6. AngleVectors( angles, &axis[0], &axis[3], &axis[6] );
      7. VectorInverse( &axis[3] );
      8. }