Si está acostumbrado a trabajar con Visual Studio y hay que compilar sus archivos bajo Linux, no hay necesidad de empezar a hacer todo en la línea de comandos;)
Como GradGuy señaló, QtCreator es un gran IDE y también lo uso para mis compilaciones que no sean Windows. Sin embargo, si no hace nada de GUI, puede usarlo junto con cmake
ya que Qt se trata principalmente de GUI.
cmake
es un generador para los archivos de solución (como archivos VS '.sln) que es independiente de qué IDE o su sistema operativo está ejecutando. Es un enfoque ascendente donde necesitas muy poco para ponerte en marcha.
Éstos son algunos pasos para empezar
- instalar QtCreator y cmake
- escribir un archivo contando
cmake
, donde los archivos de origen son y dónde encontrarlos.
crear un archivo CMakeLists.txt
en la carpeta anterior src
y escribir dentro de los siguientes:
project(myProject)
# set your include directories (if you have any)
include_directories(include)
# tell cmake what what are your source files
set(MY_CPP_FILES
src/source1.cpp
src/source2.cpp
src/srcfolder1/source11.cpp
src/srcfolder1/source12.cpp
src/srcfolder2/source21.cpp
src/srcfolder2/source22.cpp)
# if you are creating an executable then do so like this
# note that ${MY_CPP_FILES} will replace it with its content
add_executable(myExec ${MY_CPP_FILES})
# if you instead want a library, do it like so
add_library(myStaticLib STATIC ${MY_CPP_FILES}) # create a static library
add_library(mySharedLib SHARED ${MY_CPP_FILES}) # create a shared library
ahora comenzar QtCreator y selecciona File -> Open File or Project
y seleccione CMakeLists.txt
en su unidad
- ahora se le pedirá que elija una ruta donde se almacenarán los resultados (así como todos los archivos intermedios)
- hit
Run CMake
- y finalmente elija
Build -> Build All
¡Buena suerte!
Erm, dale todos los archivos fuente? –
hay alrededor de 100 archivos fuente. demasiados para listarlos uno por uno en el indicador de línea de comando – pdeva
Creo que la forma más común en proyectos complejos es tener Makefiles en cada subcarpeta e invocarlos desde las carpetas principales. Por cierto, ¿por qué no usas un IDE de todos modos? – enobayram