Hola! he leído mucho acerca del sistema Linux como un buen entorno de desarrollo, mi duda es ¿Cómo puedo programar con freeglut (OpenGL) en linux? se que es una libreria para c++, y en Linux supuestamente se trabaja mucho con eso, asi que espero que puedan responderme, gracias.
entre Desarrolladores
Recibe ayuda de expertos
Registrate y pregunta
Es gratis y fácil
Recibe respuestas
Respuestas, votos y comentarios
Vota y selecciona respuestas
Recibe puntos, vota y da la solución
Pregunta
2 Respuestas
Hola @JdeAses,
Es una pregunta un poco genérica... para usar la biblioteca, la tenés que descargar y luego enlazarla a tu proyecto para usarla, igual que en cualquier plataforma.
Esta biblioteca tiene la particularidad de que hace falta hacer el código objeto manualmente como paso previo a usarla (configure y make).
Luego, usarás el IDE que más cómodo te resulte (o ninguno), ya que todos al final llamarán a GCC para compilar.
Saludos cordiales
Por favor, accede o regístrate para añadir un comentario.
Hola @JdeAses, no tienes que hacer mayor cosa que instalar 2 o 3 paquetes desde la consola, y enlazar unas librerías.
revisa que tengas la librería glut instalada.
ls - l /usr/lib/x86_64-linux-gnu/libglut*
ls - l /usr/include/GL/glut.h
si no es así, instala desde la terminal:
sudo apt-get install freeglut3 freeglut3-dev
sudo apt-get install binutils-gold
o... también puedes compilarlo tu mismo
Ahora en codeblocks, puedes dar click derecho a tu proyecto y selecciona la opción build options, ver a la pestaña linker settings y en el campo other linker options agrega esto:
-lGL
-lglut
ya puedes incluir la cabecera sin problema y compilar tu programa.
#include <GL/freeglut.h>
Corriendo un programa simple:
#include <GL/freeglut.h>
#define WIN_WIDTH 400
#define WIN_HEIGHT 300
void display(void)
{
float r = (245.f / 255.f);
float g = (109.f / 255.f);
float b = (55.f / 255.f);
glClearColor(r, g, b, 1);
glClear(GL_COLOR_BUFFER_BIT);
glFlush();
}
int main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB );
glutInitWindowPosition((glutGet(GLUT_SCREEN_WIDTH) - WIN_WIDTH)/2,
(glutGet(GLUT_SCREEN_HEIGHT) - WIN_HEIGHT)/2);
glutInitWindowSize(WIN_WIDTH, WIN_HEIGHT);
glutCreateWindow("Entre desarrolladores");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
saludos!
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para responder a esta pregunta.
En el blog
-
- 689577
- 1
- Jul 5, 2015
Sin Respuesta
-
- 80
- 0
- Oct 18
-
- 166
- 0
- Jul 9
-
- 535
- 1
- Mar 19
-
- 409
- 2
- Feb 26
-
- 4725
- 0
- Nov 7, 2023
-
- 479
- 0
- Sep 19, 2023
-
- 464
- 0
- Ago 21, 2023
-
- 637
- 0
- May 14, 2023
- ver todas
Actividad Reciente
alyvrs preguntó Oct 19
Ayuda , necesito mostrar datos creados solo por el…ManHol preguntó Jul 9
pasar un archivo de excel a csv en pythonArtEze respondió Abr 24
Alguien sabe, no me ignorenArtEze seleccionó una respuesta Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze preguntó Abr 24
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió Abr 24
No me deja instalar OracleArtEze respondió Abr 24
Formulario que guarde los datos de un jsonArtEze comentó Abr 24
Script /boot/ scrapingSantiago2610 comentó Mar 23
Acualizar ChoiceField en django
Ultimas Preguntas
Usuarios Top
- Leonardo-Tadei
- 227320 Puntos
- Peter
- 150480 Puntos
- white
- 75880 Puntos
- carlossevi
- 63580 Puntos
- magarzon
- 30650 Puntos
- pregunton
- 20400 Puntos