elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  undefined reference to `SDL_GetPlatform' !!!!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: undefined reference to `SDL_GetPlatform' !!!!  (Leído 4,283 veces)
<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
undefined reference to `SDL_GetPlatform' !!!!
« en: 8 Julio 2010, 22:30 pm »



Holas estoy empezando a usar esta libreria(SDL), y me llamo la atencion el nombre de esta funcion el tema es que me dice : "undefined reference to `SDL_GetPlatfcompilo conorm'" al tratar de compilarlo.

estoy usando linux..

compilo con:
Código:
g++ -o app main.cpp `sdl-config --cflags` `sdl-config --libs`


la salida que obtengo es la siguiente:
Código:
/tmp/ccT5weMr.o: In function `main':
main.cpp:(.text+0x1e): undefined reference to `SDL_GetPlatform'
collect2: ld returned 1 exit status

dejo aca el codigo

main.cpp
Código
  1. #include <SDL/SDL.h>
  2. #include <SDL/SDL_platform.h>
  3.  
  4. using namespace std;
  5.  
  6. int main(int argc, char *argv[])
  7. {
  8.  
  9.  cout << "\n   hola !\n ver :\n" ;
  10.  
  11.  cout << SDL_GetPlatform() << endl;
  12.  
  13.  cin.sync();cin.get();
  14.  
  15.  return 0;  
  16.  
  17. }


espero puedan darme una mano, desde ya gracias



En línea

<[(x)]>
Ariath


Desconectado Desconectado

Mensajes: 2.099


Ver Perfil WWW
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #1 en: 8 Julio 2010, 23:05 pm »

Es curioso... mi SDL_platform.h no tiene esa función, y el caso es que en el Wiki de SDL aparece :P .

Yo solo tengo ahí un montón de #defines.

Salu2


P.D: Digo yo... ¿No te faltará enlazar con la SDL o alguna otra?.


En línea

<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #2 en: 8 Julio 2010, 23:36 pm »



  si.. yo al ver la funcion esta aca.
Ttrate de usarla y me salio q no estaba definida. Busque el archivo de cabecera '.h' en 'include/SDL' y al ver q no estaba la funcion, baje esta y la remplace.
 Pero sigo con el problema... y no se me ocurre que linkear o hacer... 
En línea

<[(x)]>
Ariath


Desconectado Desconectado

Mensajes: 2.099


Ver Perfil WWW
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #3 en: 8 Julio 2010, 23:59 pm »

¿Has probado a enlazar la SDL?

Yo al menos en Windows, con el CodeBlocks (y con GCC), tengo que añadir la opción -lSDL para que pueda enlazar bien.

Salu2


P.D: De todas formas, según lo que veo que hace la función, no hace más que intentar hacer varios #define , los cuales solo funcionan si tu plataforma coincide con uno de ellos, y si alguno surte efecto, la función te devuelve a lo que corresponde el #define.

Es decir, en el SDL_Platform.h por ejemplo tienes:

Código
  1. #if defined (WIN32) || defined (_WIN32)
  2. #undef __WIN32__
  3. #define __WIN32__ 1
  4. #endif
  5.  

Y luego, el código de la función, comprueba si alguno de esos #defines ha funcionado. Si lo hiciera el de __WIN32__, se ejecutaría:

Código
  1. #elif __WIN32__
  2. #ifdef _WIN32_WCE
  3.    return "Windows CE";
  4.  else
  5.    return "Windows";
  6. #endif
  7.  

Y si el Windows donde estás es Windows a secas, y no Windows CE, pues la función devolvería "Windows".

Incluso podrías tener tu propia función que hiciera esto ...
En línea

<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #4 en: 9 Julio 2010, 00:32 am »



 enlazada esta, sino no podría usarla en otras app q ya he hecho...
 gracias por responder Ariath.
 Entonces veré de hacerme algo  xd ,, aunque lo que mas me interesa es el porq de la falla.
 
En línea

<[(x)]>
Ariath


Desconectado Desconectado

Mensajes: 2.099


Ver Perfil WWW
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #5 en: 9 Julio 2010, 02:13 am »

No estoy 100% seguro, pero me acabo de dar cuenta de una cosa.

La SDL que, tanto tu como yo estamos usando, tal y como parece ser no tiene dicha función SDL_GetPlatform por ningún lado.

Tu entonces has encontrado un SDL_platform.h que incluye el prototipo de dicha función.

Sin embargo, antes, mirando los archivos que había en la web que me has enlazado, he alcanzado a encontrar un SDL.c que incluye dicha función.

Ese SDL.c debe formar parte seguro del código fuente de la SDL.

Si nuestra SDL no contiene dicho prototipo de función en el SDL_platform.h, es de suponer que, cuando fue compilada, su SDL.c tampoco incluía la función en sí.

Por lo tanto, lo que estamos intentando hacer (porque yo acabo de probarlo también haciendo un backup previo de mi SDL_platform.h y me he bajado el que has enlazado), es llamar a una función que realmente no existe en nuestro SDL, solo contamos con el prototipo declarado en el SDL_platform.h, no con la función en sí.

Salu2
En línea

<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
Re: undefined reference to `SDL_GetPlatform' !!!!
« Respuesta #6 en: 9 Julio 2010, 04:46 am »

esato... habia pensado en eso...

me (460 en la diversidad xd  
« Última modificación: 9 Julio 2010, 04:53 am por <[(x)]> » En línea

<[(x)]>
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Gas con sintaxis intel: Undefined reference to...
ASM
farresito 1 5,486 Último mensaje 11 Marzo 2011, 23:15 pm
por Eternal Idol
template undefined reference : help.
Programación C/C++
bash 2 3,154 Último mensaje 2 Mayo 2011, 19:09 pm
por bash
NASM Linux printf - scanf "undefined reference"
ASM
Leyer 5 9,148 Último mensaje 7 Enero 2012, 20:32 pm
por Eternal Idol
CodeBlocks "undefined reference to gotoxy"
Programación C/C++
van13 1 5,057 Último mensaje 27 Octubre 2012, 02:42 am
por BatchianoISpyxolo
[Linker error] undefined reference to `i'
ASM
Boss99 1 4,154 Último mensaje 23 Noviembre 2012, 01:17 am
por Eternal Idol
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines