Ayuda, con Opciones de compilacion

Iniciado por bash, 4 Noviembre 2016, 21:42 PM

0 Miembros y 2 Visitantes están viendo este tema.

bash

Buenas a todos!!

tengo como siempre un par de preguntas :

1- estoy tratando de linkear una libreria estatica (.a) desde una ruta alternativa al path que tiene el compilador por defecto y si siempre me dice que no encuentra la libreria,
estoy usando GCC segun el manual pasando el path con la opcion -LC eso esta resuelto pero no es asi.

2- estoy tratando de utilizar la libreria .a pero sin el prefijo lib, segun varias fuentes en internet pasando -l:<Nombre_de_mi_libreira>.a eso deberia estar resuelta pero no, tambien puede ser que el problema dependa del punto 1.


quite todas las dependencias de la libreria solamente para probar la aplicacion y este seria le siguiente punto.


3-estoy tratando de hacer una prueba fuera de la maquina que tengo en desarrollo y cuando trato de correr la aplicacion ya creada , me sale un msg que dice, que la version de la aplicacion no es compatible con la version de windows que estoy utilizando, que verifique si necesito una version de 32 o 64 bit de la aplicacion y contacte al que publica la aplicacion.


agradezco por adelantado.

gracias por responder mis dudas

ivancea96

-L<directorio donde buscar las librerías>
-l<nombre de la librería>
El nombre de la librería, sin el prefijo "lib" si tiene, ni la extensión: "libabc.a" -> "abc"

En cuanto al tercer punto, puedes revisar si estás usando un compilador de 64 bits y lo tratas de ejecutar en una máquina de 32 bits. Este problema ya es más difícil de analizar sin datos.

bash

#2
gracias , el tercer punto es el mas extrano , por que empese a utilizar Eclipse cree un proyecto ,compila bien y se ejecuta , pero desde que paso a solo usar makefile me da error.


y mi maquina es 64 bit ,pero las librerias son de 32 bit y cuando compila en eclipse corren bien


[edit]
lo que me gustaria entender es como poner orden al compilador para poder hacer deployment en produccion?
gracias por responder mis dudas

ivancea96

Cita de: bash en  4 Noviembre 2016, 22:43 PM
lo que me gustaria entender es como poner orden al compilador para poder hacer deployment en produccion?
¿Poner orden al compilador?
Si el compilador está instalado, entocnes solo es compilar. No entiendo la duda. En el peor de los casos, puedes compilar a mano (o con un batch). Si puedes compilar a mano, hacer el makefile no será mucho más complicado.

bash

si, es cierto con hacer g++ main.cpp -o app.exe  estaria bien pero cuando lo paso a otra computadora que trabaja en la misma arquitectura de computadora , me pone ese mensaje a  parte
si muevo el ejecutable a otra carpeta y reinicio la computadora me hace mencion que para ejecutrar necesitas unas dll en windows , estas dll estan dentro del folder bin en mingw,
gracias por responder mis dudas

ivancea96

Vale. Para lo de las dll, añade la opción de compilación "-static", para que las compile en static y no necesites las DLL.