[TIP] problemas al compilar en Geany .C

c-iconPues como ya he comentado en alguna entrada anterior ( creo ) estoy estudiando programacion C, poco a poco y en los ratos libres que tengo, motivo por el que aún escribo menos de lo habitual por aquí y le presto menos atención a otras paginas o blog’s que solia visitar casi a diario.

El problema con el que os vengo hoy lo he tenido hace un rato trabajando con un código en C que hace uso de la biblioteca <math.h> ademas de la <stdio.h>  que creo que se usa para casi todo 😉 y es que tras escribir el código fui a compilarlo con el mismo Geany y este me lanza un error

captura-geany3

Como si el compilador no incluyera la libreria math.h, me dice «referencia a ‘pow’ sin definir» (pow se utiliza para realizar operaciones de potencias, acabo de aprenderlo 🙂 )

Entonces me voy a lo clasico, consola y gcc, con el siguiente resultado

gcc archivo.c -o archivo

captura-geany4

Entonces ya me empiezo a mosquear porque en cosas así pierdo un montón de tiempo que no tengo rebuscando por la red la solución, pero sigo leyendo el libro que estoy usando y me viene una pequeña nota que dice:

[nota: En muchos compiladores de C UNIX, usted debe incluir la opción -lm cuando compile el programa. Esto vincula la biblioteca de funciones matematicas con el programa.]

Dicho y hecho, vuelvo a la terminal y tipeo:

gcc -lm archivo.c -o archivo

Y compila correctamente, sin errores. Asta aquí solucionado, pero es engorroso escribir un programa y tener que ir a la terminal a compilarlo y probarlo así que me pongo a trastear entre la configuracion de Geany haber donde tienes las opciones del compilador para intentar cambiarlas agregando este -lm y que me funcione (almenos en los ejercicios que ando haciendo actualmente).

Pues las encontre 🙂 , Estan en la pestaña Construir / Estabalecer comandos de construcción, os encontrareis algo como esto

captura-geany5

Y tan facil como cambiar en el bloque Comandos en C la opción construir de gcc -Wall -o «%e» «%f» a gcc -lm -o «%e» «%f» , guardamos y ya podremos compilar, construir y ejecutar de nuevo el programa desde nuestro propio Geany, con la comodidad que eso conlleva.

captura-geany6

Aqui una muestra de que funcionar, funciona. De momento almenos, haber cuando incluya mas bibliotecas que extraños hace entonces xD

captura-geany7

15 comentarios:

  1. Pingback: Bitacoras.com

  2. Hermano por favor necesito tu ayuda mi geany me muestra un error y no se que hacer realmente. Espero que puedas ayudarme, en el momento en que te llegue este mensaje podrias comunicarte conmigo para darte mas informacion sobre el error! Gracias espero tu respuesta!

  3. Si claro, pega el error o pon una captura para que lo vea a ver si te puedo ayudar

  4. hola necesito ayuda , hace rato estoy programando y me aparecen varios errores y no se si es un problema mio en el análisis o que sucede

  5. Gracias por fin encuentro una buena solucion-

  6. Hola , cuando pongo compilar me salta » El proceso ha fallado {El sistema no puede encontrar el archivo especificado «} . Por que puede ser ? Gracias

  7. ROGER IVAN SANTOYO CHULIM

    que libro utilizas , tengo el mismo problema y me gustaria ver con mas detelle

  8. gcc: error: “p5.c”: No existe el archivo o el directorio
    Pues configuré el Geany como recomendaste y ahora salta ese error… no logro compilar con éxito

    • Hace tiempo que no uso geany pero si me pones una captura o algo que lo pueda ver te lo miro.
      Has probado a compilar desde la consola?? quizás nos de más datos de que puede pasar.
      Se me ocurre que puedes intentar compilar sin haber salvado el archivo, ya que dice que no existe.

  9. he intentado hacer lo mismo que tu porque necesito utilizar el math.h con ceil y floor y no me ha dejado

  10. hice esa modificacion pero el problema persiste, de hecho cualquier cosa que haga en este windows me pide permiso, quizas es por los privilegios de cuenta de usuario, si es ese el problema y no permite que geany tenga permisos de escritura sobre el disco raiz entonces no tengo idea de como resolverlo 🙁

  11. Hola a todos, en mi caso ocurria igual, pero encontre resolverlo de otra manera, tan facil como cambiar en el bloque Comandos en C la opción construir de gcc -Wall -o «%e» «%f» a gcc -Wall -o «%e» «%f» -lm, guardamos y ya podremos compilar, construir y ejecutar de nuevo el programa desde nuestro propio Geany, con la comodidad que eso conlleva.. Como pueden observar, yo deje el -Wall y el -lm lo coloque al final, me di cuenta que el orden de las instrucciones tienen efectos distintos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.