¿Cuál es la mejor y la manera más fácil de crear (para Linux) una aplicación de C++ que se ha escrito en Visual Studio? El código en sí es listo – he utilizado sólo de la cruz-plataforma de libs.

Es posible preparar todo bajo Windows en Visual Studio y, a continuación, construir con un CLI herramienta en Linux? ¿Hay alguna docs describir esto?

EDICIÓN: algo más de información:

  • Libs utilizado: stl, wxwidgets, boost, asio, cryptlib.

  • Muy poco Linux know-how.

EDICIÓN#2: elegí la siguiente solución: Hacer un nuevo proyecto con kdevelop y compilar todo lo que hay.

InformationsquelleAutor mspoerr | 2009-04-29

4 Comentarios

  1. 19

    Estamos usando CMake para Linux proyectos. CMake puede generar KDevelop y archivos de proyecto de Visual Studio, así que usted puede crear su CMake archivo como el origen de la plataforma IDE específico para los archivos. El KDevelop generador está bien, así que usted puede editar y compilar en KDevelop (que a su vez llame a Hacer).

    Por otro lado, si usted no tiene nada de lujo, usted puede usar CMake, o simplemente Hacer para construir la cosa en Linux, si usted desea permanecer con su archivo de solución (que es lo que estoy haciendo actualmente para una biblioteca con aplicaciones de prueba). Este enfoque se complica cuando su proceso de construcción es más que «tirar de estos archivos en el compilador y vamos a ver qué se hace», por lo que el CMake solución es en mi opinión una buena cosa para el desarrollo multiplataforma.

    • Me gustaría tener es el camino para que yo pueda hacer uso de la VisualStudio la configuración y guardar como archivo makefile? y su uso bajo Linux. Es eso posible? /mspoerr
    • Visual C++, al menos hace un tiempo, admite la exportación de un proyecto o solución a un archivo makefile. Se puede probar, pero el makefile resultado es (o era en ese momento) un caos sangriento. También puedes probar a crear un XSLT para transformar el archivo de proyecto (no de la solución, a pesar de que) cualquier cosa que usted desee, incluyendo un Makefile o CMake archivo.
  2. 7

    Aquí es cómo compilar código C manualmente bajo Linux sin necesidad de construir herramientas:

    gcc -s -O2 -o prog -I. -Iincludedir1 -Iincludedir2 -Llibdir1 -Llibdir2 code1.c code2.c -luse1 -luse2

    Sin embargo, si su proyecto es más grande que un par de archivos, usted lo desea, puede utilizar una herramienta de construcción de lugar (como CMake, ver OregonGhost la respuesta) para automatizar la compilación de muchos archivos y hacer copias incrementales. Si utiliza una herramienta de creación, se ejecutará gcc bajo el capó, con argumentos similares anteriormente. Es útil para entender los argumentos de arriba, así que usted puede solucionar si su generación automática falla.

    Se va a compilar code1.c y code2.c a binario ejecutable prog, de carga .h archivos de ., includedir1 y includedir2, la carga de las bibliotecas (por ejemplo, libuse1.así* y libuse2.de modo*) a partir de los directorios de libdir1 y libdir2, el uso de las bibliotecas use1 (correspondiente al nombre de archivo libuse1.de modo*) y use2.

    Si usted consigue undefined symbol errores en su .c archivos, usted tiene que especificar más -I banderas. Si usted consigue undefined symbol errores en el .o archivo, usted tiene que especificar más -l banderas. Si usted consigue cannot find -l... errores, usted tiene que especificar más -L banderas.

    • Estoy asumiendo que él tiene más de un archivo. Compilar sin Makefiles que es tonto.
    • He actualizado mi respuesta, la recomendación de una herramienta de construcción. Creo que mi respuesta fue y es perspicaz y útil para la solución de problemas, incluso si una herramienta de construcción se utiliza.
    • esto tiene que ser g++ para un proyecto de c++ derecho?
  3. 6

    8 años más tarde …

    Me topé con esta pregunta hoy y pensé que te podría gustar echa un vistazo a Visual C++ para Linux.

    Lanzado en Marzo de 2016, VC++ para Linux permite crear un proyecto en VC++ y, a continuación, construir en una máquina Linux/VM el uso nativo de herramientas de Linux. Lo que es más, usted también puede de depuración su aplicación en VS puesto que las herramientas de Linux permiten que el VS depurador de la unidad de GDB en su máquina Linux/VM a través de SSH!!

    Parece que es casi exactamente lo que @mspoerr estaba pidiendo 🙂

  4. 4

    ¿Cuál es la mejor y la manera más fácil de crear una aplicación de c++, el cual fue escrito con Visual Studio para Linux? El código en sí es listo – he utilizado sólo de la cruz-plataforma de libs.

    • Verifique si hay algo que no es parte del Estándar de C++
    • Enjuague y repita
    • Crear un makefile o KDevelop proyecto

    Et voilà!

    • puede este makefile ser generados a partir de VisualStudio? Que cambios son necesarios para que funcione bajo Linux? /mspoerr
    • Algunas versiones de VS puede generar makefiles para nmake — un Windows CLI basada en el sistema de compilación. La encontrará en los sistemas *nix es un poco diferente. Usted tendrá que eliminar las diferencias. De la OMI, que va a ser más fácil, ya SEA para 1) el Uso de Code::Blocks (o algún IDE multiplataforma) y gcc en su Windows para obtener un sistema de generación de trabajo y, a continuación, utilizar en Linux O 2) el uso de KDevelop que tiene una mirada-n-sensación similar a VS para agregar archivos de código fuente/libs etc y obtener un autoconf basado en el sistema de compilación creado para usted.

Dejar respuesta

Please enter your comment!
Please enter your name here