¿Cuál es el mejor IDE para C / C ++ en Ubuntu?

Code :: Blocks es el mejor IDE en Linux en general por varias razones:

  • Escrito en C ++.
  • Lanza relativamente rápido.
  • Código nativo significa inicio rápido.
  • Muy pequeño conjunto de dependencias de configuración.
  • Muy similar a Microsoft Visual Studio.
  • Se ejecuta en todos los principales sistemas operativos gráficos.
  • Puedes estandarizarlo con un alojamiento mínimo.

Eclipse de prueba

El primer IDE que utilicé en Linux fue Eclipse CDT. Como había un gran complemento que le permitió a Eclipse soportar el sonido del sonido, parecía una buena compensación. Finalmente, me pareció extraño que necesitara Java y también un tiempo de ejecución para que un IDE produjera código nativo que no necesita tiempo de ejecución. La paradoja no tuvo resolución aparente.

Específicamente, antes de que decidiera ejecutar Eclipse, no necesitaba el soporte de Java para ninguna de las aplicaciones Gnome. Sin embargo, cuando hice apt-get install default-jdk o algún derivado de eso, me ofrecieron la recompensa de docenas de paquetes para descargar e instalar. Eso también es un déficit de Mono para C # en Linux. Algo se sintió muy ineficiente acerca de inundar el entorno de Ubuntu con infraestructura de soporte para escribir código para una aplicación nativa que no lo requiere .

Esos fueron los primeros días de apoyo al clang. Ahora es estándar en Código :: Bloques. Puede usar apt-get install codeblocks y con mínimas dependencias, y estar listo para ir muy rápido.

Ventajas específicas del código :: Bloques

Probé a otros, incluidos Anjuta, Qt Creator y CodeLite. Son muy recomendables por el enfoque de desarrollo que ofrecen. Lo que distingue a Code :: Blocks es que es lo más cercano a Microsoft Visual Studio completo en un código nativo IDE, ya que obtendrá que funciona en todos los sistemas operativos. Al menos versiones de Visual Studio anteriores a la versión 2014.

Dependiendo de cómo se sienta con respecto a Microsoft Visual Studio, eso hace que Code :: Blocks sea muy productivo. Desarrollo de software más rápido . No solo podría estandarizar su desarrollo en Code :: Blocks para trabajar donde quiera que trabaje, sino también contar con un gran soporte para varios proyectos basados ​​en IDE.

Los videojuegos, los programas de escritorio, los programas de consola, las dlls de Windows, las librerías de Linux y docenas de otros proyectos de inicio están integrados directamente en Code :: Blocks. Inmediatamente después de instalar Code :: Blocks, puede iniciarlo, elegir un compilador, configurar un proyecto, escribir algo de código, ver el resultado del compilador y luego iniciarlo en modo de depuración con soporte completo de punto de interrupción respaldado por gdb.

No uso un IDE mucho estos días. Eso difiere según las circunstancias. Yo uso la línea de comandos exclusivamente en este punto. Mi entorno de programación original durante varios años fue un entorno de línea de comandos. En lugar de un IDE, uso gedit, vi, ssh, scp, git y make. Lo encuentro más rápido en algunos casos, más completo y más fácil de migrar a una variedad de contextos. Sin embargo, a medida que se van los IDE, Code :: Blocks es el campeón cuando se trata de una infraestructura de software automatizada que utiliza una interfaz gráfica de usuario por las razones expuestas al principio.

Lo mejor de IDE específicos para el medio ambiente

Si bien Code :: Blocks es el IDE nativo, no es la única opción cuando se considera qué Linux se usa más. Una instalación predeterminada de Ubuntu y algunas otras distribuciones de Linux lo orientan más hacia los estándares de interfaz gráfica de usuario basados ​​en GTK +. A veces de forma directa y otras veces como parte complementaria del medio ambiente. En esos casos, Anjuta DevStudio es muy convincente.

Lo bueno de Anjuta DevStudio es que es más ligero, más rápido y se adapta muy bien a los entornos Linux orientados a GTK +. Hace muchas de las cosas que hace Code :: Blocks, pero de una manera que está en la alineación de los límites con los estándares de diseño de GTK +.

Anjuta está en camino de convertirse en el IDE C ++ líder en Red Hat, CentOS y Ubuntu. Sin embargo, usarlo en todos los sistemas operativos es una opción menos. No es un problema si Linux es su base de desarrollo principal desde la cual distribuye archivos make, compila scripts e instaladores para otros entornos o distribuye a través de las tiendas de aplicaciones.

Si bien puede ejecutar Anjuta en un entorno KDE y en distribuciones como Kubuntu, KDevelop está mejor si usa Kubuntu o decide introducir el entorno KDE. Obtendrá soporte de primera clase para el IDE en tales casos y si crea soluciones para el entorno KDE, es la opción obvia. Si bien puede admitir otros tipos de entornos y la creación de un programa ejecutable nativo derivado de C ++, en general, su mejor caso de uso es en entornos KDE.

KDE se ve muy bien, pero creo que los entornos de escritorio derivados de GTK + (lea Gnome, Wayland, y X11 Wrapper, etc.) son mejores, ya que tienen un enfoque más ágil, limpio y técnicamente más amplio. El estándar de facto en Linux GUI. Gnome comprende varias dependencias, pero cuando tiene un sistema preestablecido de sistema operativo con este entorno y luego decide introducir KDE, entonces vuelve a la situación con Java. Por lo tanto, evito las herramientas basadas en KDE aunque se vean mejor y tengan un pulido mucho más refinado y un amplio conjunto de funciones. Desafortunadamente, KDE no se expandió lo suficiente para justificar la adición de más dependencias de tiempo de ejecución visual en un entorno existente con elementos de tiempo de ejecución adecuados. Es bueno tener alternativas aunque en el caso de que Gnome alguna vez tome un giro demasiado incómodo.

Un Supuesto Mejor, Qt

Qt Creator puede hacer todo lo anterior y es muy recomendable si ha decidido que Qt es su solución principal. Soy un fan de Qt en teoría. En la práctica, tiene demasiadas dependencias de desarrollo y matices que son menos prácticos si no lo emplean de manera industrial. Sin embargo, aparte de eso, es un IDE realmente bueno, pero no tanto como para ser descrito como el mejor en general o en contextos específicos del entorno fuera del desarrollo basado en Qt.

Mejor según el nivel de comodidad

Aquellos que prueban algo diferente a Xcode o Microsoft Visual Studio pueden encontrar que Code :: Blocks es muy accesible. Podría seguir siendo un IDE primario o convertirse en un trampolín en otro que cumpla con otros requisitos. Code :: Blocks no solo cumple con los criterios establecidos anteriormente, sino que también cuenta con una importante comunidad de tutoriales, documentación de ayuda en línea y un conjunto de funciones fáciles de descubrir que las personas menos familiarizadas con IDE en Linux encontrarían muy accesibles (al menos por comparación ).

Con respecto a un IDE más centrado, Anjuta DevStudio es mucho mejor para aquellos con una exposición sólida a la línea de comandos, pero que en ocasiones deciden usar un IDE. Anjuta DevStudio tiene un diseño de IDE general que es familiar si ha usado IDE como Microsoft Visual Studio pero con menos alarmas y silbidos que a veces pueden interferir. Se mapea mucho más cerca de un estilo más sin filtro de desarrollo de C ++ con un impacto casi nulo en términos de memoria, recursos y ciclos de iteración de código (escritura, compilación, enlace, depuración, volver a escribir).

Para mí, Qt Creador. He usado (intentado) bastantes IDE en linux. Finalmente me decidí por Qt Creator. Ha mejorado bastante a lo largo de los años. Especialmente: edición, navegación de código y depuración, que son las características más importantes de un IDE. La depuración aún no está a la par con Visual Studio, pero ningún otro IDE en Linux lo hace tan bien como Visual Studio.

El creador de Qt tiene un complemento preinstalado llamado FakeVim que emula al editor vim en un grado suficiente. Esto facilita la vida durante largas horas de codificación sin lesiones por RSI. Combinado con FakeVim, el creador de Qt tiene una gran cantidad de accesos directos intuitivos que le permiten ir sin mouse (no más dolor / lesión en el hombro del mouse). Si se ha enfrentado a un dolor en el hombro como yo, apreciará la posibilidad de no usar el mouse.

Otra de mis características favoritas es la capacidad de agregar rápidamente definición / declaración a los archivos .h / .cpp. Si agregó una nueva definición de función a una clase en un archivo .cpp, simplemente puede hacer clic derecho y agregar la declaración correspondiente al archivo de encabezado de la clase (y viceversa). Esto hace que las cosas sean super rapidas. Tales trucos de edición pueden agregarse fácilmente a editores como vim / emacs que tienen un buen soporte para scripting. Pero no todos están dispuestos a pasar el tiempo instalando complementos y ajustando / ajustando sus editores. Hay otras habilidades de “refactorización de código” que el creador de Qt proporciona como cambiar el nombre de un símbolo. Esto no es como cualquier otra herramienta de búsqueda / reemplazo de texto. Comprende el alcance del símbolo al que se le está cambiando el nombre y realiza los cambios correspondientes.

La finalización del código del creador de Qt también es muy buena y simplemente funciona (a diferencia de Visual Studio, en mi experiencia). Permite búsquedas de cadenas parciales para que no tenga que saber los caracteres exactos con los que comienza un método. Esto sin duda hace que sea más fácil encontrar lo que está buscando con algunas conjeturas.

En conclusión, opino que el creador de Qt es probablemente el mejor IDE para C ++ entre los disponibles actualmente en Ubuntu. Descubra qué características le interesan más y busque establecer un entorno de desarrollo que funcione para usted. Esto puede significar el uso de múltiples herramientas en lugar de comprometerse con un solo IDE. La mayoría de las veces, estas elecciones son subjetivas debido a diferentes prioridades personales.

El mejor IDE de C / C ++ en todas las plataformas (excepto MacOS) es:
1. Visual Studio
2. Eclipse
3. CodeLite
4. otros

Muchos IDE como Code :: block son en realidad muy pobres. La razón por la que algunas personas piensan que es bueno es porque son principiantes principiantes que solo trabajan en proyectos pequeños y simples que se pueden compilar utilizando una única línea de comandos de gcc / g ++. Si ha trabajado con proyectos grandes y complejos utilizando Makefile, Jamfile, CMakefile, etc., o proyectos que involucran compiladores especiales como nvcc (compilador Nvidia CUDA) solo para ciertos módulos, o proyectos que producen múltiples ejecutables y bibliotecas dinámicas, termina. con muy poca opción para el IDE. Eclipse puede manejar casi todos ellos, pero es muy lento debido a la sobrecarga de JavaVM. VisualStudio es el mejor, pero es solo para Windows. Otros IDE como los bloques de código y el código de código aún no están maduros, las funcionalidades muy básicas no están soportadas o tienen errores, por ejemplo,

Lista avanzada de funcionalidad IDE de programación avanzada:
1. elementos esenciales como esquema de código, cambio de perspectiva, cambio de tamaño de fuente, registros, pila para cada hilo, memoria, desensamblaje, consola de depuración, consola de compilación, agrupación automática de errores / advertencias de compilación y acceso, plegado de código, resaltado de palabras clave
2. depuración de objetos STL anidados utilizando la visualización de información sobre herramientas con impresión bonita
3. Deducción del tipo de variable para variables automáticas de múltiples niveles.
4. Expansión de macros anidados en la descripción.
5. navegación hacia adelante / hacia atrás del código
6. Ctrl + clic izquierdo para ir a la definición, incluidas las definiciones del operador
7. Detección de implementación múltiple de clase virtual durante la ejecución de la definición, es decir, con ctrl + left_click, puede elegir ingresar a la definición de la clase virtual, o cualquiera de las definiciones de su implementación
8. vista de memoria por tipos de datos, por ejemplo, ver la memoria como una matriz de int, float, etc. y clase
9. configuración arbitraria de teclas de acceso directo
10. búsqueda / reemplazo de expresiones regulares de alcance variable, por ejemplo, en un solo archivo, un proyecto, todos los proyectos abiertos, todos los archivos abiertos, etc.
11. especificando la línea de comando completa arbitraria, es decir, puede especificar múltiples canalizaciones, redirecciones IO o scripts de shell en la línea de comando en lugar de solo los argumentos del programa. Esto es útil porque para proyectos grandes y complejos, algunos programas pueden estar dentro de una biblioteca dinámica, algunos no se pueden depurar como un módulo independiente sin modificación de código, por ejemplo, “zcat input-data.gz | your-program-to-be-debugged.exe [opciones-programa] 1> file.stdout 2> file.stderr ”; además, algunos argumentos pueden contener espacios en blanco o usar una expansión de shell que se comportará de manera diferente en sus argumentos IDE, por ejemplo, “your-program.exe” -t 0 1 2 “some-path / *. txt”, el primer argumento contendrá 3 espacios en blanco excluyendo las comillas dobles que muchos IDE confundirán, y el shell también expandirá el segundo argumento en una lista de los nombres de archivos reales, si existen.
12. depurando simultáneamente múltiples archivos ejecutables / dynamic_libraries que pertenecen a diferentes proyectos, por ejemplo, “zcat input-data.gz | your-program1-to-be-debugged.exe [program1-options] 2> file.stderr | your-program2-to-be-debugged.exe [program2-options] | … ”, mientras que su programa # -to-be-debugged.exe pertenece a diferentes proyectos activos

Muchas fallas o funcionalidades faltantes solo se pueden realizar cuando se usa ampliamente en grandes proyectos complejos, no superficialmente en proyectos de nivel principiante.

Entonces, en conclusión, no hay un solo IDE bueno para C / C ++ en Linux hasta hoy (tal vez mi estándar sea un poco demasiado alto), Eclipse es relativamente el mejor que puede usar si trabaja en Linux. CodeLite se está poniendo al día rápidamente, aunque es mucho más rápido que Eclipse, aún le faltan muchas funcionalidades importantes que Eclipse tiene. Para Windows, enseguida vaya para VS. Para MacOS, no estoy seguro de Xcode porque Xcode solo puede ejecutarse en MacOS, pero MacOS ni siquiera puede instalarse en una PC x86 estándar (a menos que sacrifique el rendimiento utilizando una máquina virtual). En contraste, tanto Windows como Linux pueden instalarse en una Macbook.

Kdevelop, CLion, Eclipse. Esa sería mi lista corta. Me gustaría pasar un día o dos con cada uno para determinar el mejor ajuste.

Kdevelop tiene muy buenas referencias, y C ++ es su especialidad y es gratis. También me gustaría ver el CLion IDE de JetBrains que se beneficia del amplio ecosistema de JetBrains (consulte http://www.jetbrains.com/clion/s …). La oferta de 30 días de prueba y los costos de licencia son generalmente Eclipse también puede ser una buena opción.

Aunque el producto JetBrains es más joven, ya he usado varios productos JetBrains que comparten una amplia plataforma pcore. Por lo tanto, encontré que pasar de WebStorm a RubyMine a PHPStorm fue trivial. Y los enlaces de VIM son bastante buenos.

Utilicé Eclipse y CodeLite. Eclipse CDT es más complejo y ofrece más funciones, pero carga mucho tiempo y necesita mucha memoria RAM. CodeLite es más simple, tiene menos funciones, pero se carga rápidamente y funciona sin problemas.

Sigo utilizando VIM muy a menudo y un conjunto de herramientas de línea de comandos, que considero mi entorno de desarrollo integrado personal, porque todas las herramientas están integradas con mi interfaz de línea de comandos, también conocida como terminal. Utilizo herramientas como “ag”, “find”, “sed”, “cp”, ” git “, “gdb”, etc. También utilicé espacios de trabajo en Unity y terminator, antes de cambiar al administrador de ventanas i3.

Si aún está en sus días de estudiante, diré que el terminal en sí mismo es el mejor IDE con la cadena de herramientas GCC. Apréndalo a fondo y estoy seguro de que será más productivo que usar cualquier otro IDE y sus complementos.

Si no eres un estudiante o no estás realmente interesado en aprender el monstruo, CodeBlocks es un buen trabajo que se sabe que funciona bien. Lo he usado antes de cambiar a usar el terminal y sus herramientas.

Suponiendo que sea ejecutable, el programa debería ejecutarse al hacer doble clic en él. Sin embargo, ejecutar no significa que abrirá una ventana de terminal. Se ejecutará silenciosamente sin un terminal y no mostrará su salida. Aquí hay un programa de C que puedes probar que demostrará:

#include

int main () {
ARCHIVO * fp;

if (fp = fopen (“hello_world.txt”, “w”)) {
printf (“Escribir texto en un archivo \ n”);
fprintf (fp, “¡Hola mundo! \ n”);
fclose (fp);
}

devuelve 0;
}

Eso debería crear un archivo llamado “hello_world.txt” en el mismo directorio, pero notará que, de lo contrario, no hay evidencia de que haya hecho nada. No verá el mensaje de la declaración printf (), por ejemplo.

Use el compilador gcc para compilar el archivo fuente C.

Utilice cualquier editor de texto o editor basado en terminal (vim.emacs, nano) para abrir el archivo de origen. Ejemplo: nano source.c

Para ejecutar el archivo: Simple establece el comando:

gcc source_code.c -o output_file

Para compilación de GUI. Use cualquier IDE Clion adecuado de Jetbrains, Eclipse, Netbeans con el complemento C, Código :: Bloques.

Básicamente, no es necesario tener IDE para c / c ++ si está utilizando ubuntu.

Ubuntu en sí mismo tiene un compilador que compila y ejecuta su programa c / c ++ y es el mejor. Nunca usé ningún IDE para c / c ++ mientras utilizaba ubuntu. Simplemente escriba un código en el archivo “.c / cpp” y ejecute el símbolo del sistema.

Lo encontré muy útil y funciona bien.

Seguramente, aprenderá más cosas si programa en Ubuntu que un IDE.

¿Utilizas alguna comunicación con la entrada o salida estándar allí? Tal vez si lo ejecutas sin un terminal obtienes SIGHUP y el programa termina.

¡Preguntar cuál es el mejor IDE es pedir respuestas al azar!

Pero hay algunos famosos que son realmente confiables:

Los 18 mejores IDE para la programación en C / C ++ o los editores de código fuente en Linux

¿Mi favorito? Clion

1.eclipse … a hevy, muy profundo, muy potente, pero necesita un alto procesador

2. Bloques de código… .. fáciles de leer

3.netbeans… = bloques de código

Pero el IDE más poderoso es vim + Gcc.Es duro pero muy poderoso.

Eclipse funciona bien para mí.

  1. CodeCodeBlocks
  2. Compilador GCC vía terminal

Una solución simple sería crear un atajo que ejecute ./name-of-executable para que ahora pueda hacer clic en el icono para abrir su programa gui.

Puedes probar Eclipse o netbeans. Ambos tienen complementos de C ++. Solía ​​usar emacs hace mucho tiempo.