¿Hay algún IDE de C / C ++ para Windows, que está integrado con el compilador LLVM (y el analizador Clang C / C ++), al igual que lo hace el Xcode moderno?
Tengo Dev-Cpp (usa GCC desactualizado) y Code :: Blocks (con algunos GCC). Pero GCC me da mensajes de error muy crípticos. Quiero obtener algunos mensajes de error más fáciles de usar desde la interfaz de Clang.
Sí, Clang no se pudo usar con código C ++ complejo, pero el tronco Clang ya puede compilar LLVM. Así que me pregunto si hay alguno de los IDE de LLVM en desarrollo o en versiones beta.
Sí, puedo usar Clang como otro compilador con IDE compatibles con GCC. Pero, ¿hay algún IDE que esté integrado con Clang? Clang tiene un formato de salida diferente, por lo que el IDE debe analizarlo. Clang puede proporcionar análisis IDE de fuentes. Clang tiene una opción de análisis, que debe ser compatible con un IDE. Eche un vistazo, por ejemplo, http://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html
Y la característica más buscada de Clang es el autocompletado inteligente, por lo que el IDE puede sugerir solo variantes con sintaxis correcta, por ejemplo, enumerar solo campos de esta estructura, clase.
Resultados: (combinado de respuestas):
- Eclipse con CDT> = 8 y con el complemento https://code.google.com/archive/p/llvm4eclipsecdt/ , de Petri Tuononen (sin autocompletado inteligente)
- Vim con vimrc del proyecto LLVM (¿solo finalización inteligente?) Https://llvm.org/viewvc/llvm-project/llvm/trunk/utils/vim/
- Emacs con (¿solo finalización inteligente?) Https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el
- Creador de Qt: https://blog.qt.io/blog/2011/10/19/qt-creator-and-clang/
- CodeLite: http://www.codelite.org/LiteEditor/ClangIntegration35
Respuestas:
LLVM es compatible con Eclipse CDT a través del complemento ( llvm4eclipsecdt ). Es el único IDE compatible con Windows que admite LLVM hasta donde yo sé. Soy el autor principal del complemento, por lo que puede hacer cualquier pregunta relacionada con él.
El complemento ofrece la funcionalidad básica para la compilación de Clang y llvm-gcc y es compatible con Linux y Windows (con Cygwin y MiNGW). Las herramientas LLVM como ensamblador, archivador, enlazador y compilador estático (llc) se configuran y se pueden personalizar a través de la interfaz de usuario. El complemento ofrece todos los beneficios que IDE puede ofrecer, como una configuración y una construcción sencillas con una sola acción.
El único inconveniente es que aún no está listo, ya que carece de algunas de las funciones avanzadas que LLVM puede ofrecer, como el análisis de Clang y la finalización automática inteligente. El complemento tampoco se ha probado bien y puede que no funcione perfectamente, por lo que espero poder obtener comentarios de los usuarios a través de la lista de correo que se encuentra en el sitio de desarrollo de código de Google (que se enumera a continuación). Ojalá tuviera tiempo para desarrollarlo más. Solo lo desarrollo en mi tiempo libre, que es muy limitado. Doy la bienvenida a cualquier desarrollador a participar y contribuir al proyecto.
Sitio de desarrollo:
http://code.google.com/p/llvm4eclipsecdt/https://github.com/TuononenP/llvm4eclipsecdt
Mercado de Eclipse (100% gratuito y de código abierto):
http://marketplace.eclipse.org/content/llvm-toolchain-eclipse-cdtACTUALIZACIÓN: El complemento está obsoleto. En su lugar, instale "C / C ++ LLVM-Family Compiler Build Support" en Lenguajes de programación utilizando el sitio oficial de actualización de Eclipse, por ejemplo, http://download.eclipse.org/releases/mars
fuente
Dan Gohman, colaborador de LLVM, agregó recientemente la finalización de código Clang a vim .
http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/vim/vimrc está diseñado para su uso en el desarrollo de LLVM y ayuda con el estilo de codificación de LLVM, pero la parte de finalización del código debería ser lo suficientemente fácil de extraer .
Sí, sí, vim no es un IDE, pero puede ser útil conocerlo.
[editar] https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el proporciona una opción similar para emacs .
fuente
Qt Creator también funciona con Clang ...
fuente
Ahora están agregando soporte para el enlace de Visual Studio . Se puede descargar aquí .
fuente
No hay uno para Windows. Pero si desea una finalización automática inteligente, netbeans tiene una de las mejores finalizaciones de código para C ++. Analiza macros, contenedores genéricos y punteros inteligentes. Además, proporciona refactorización, inserción de código de constructores y captadores y definidores. Funciona muy bien. Sin embargo, dado que todavía usa un analizador separado para C ++, no detecta tantos errores como el compilador.
Netbeans para java está integrado con el compilador, por lo que da errores y advertencias a medida que escribe, así como finalización de código sintácticamente correcta. Por lo tanto, es muy probable que netbeans se integre en el futuro con clang para proporcionar el mismo tipo de características para C ++.
fuente
Se ha agregado compatibilidad con LLVM a Eclipse : http://marketplace.eclipse.org/node/28778
fuente
Además, CodeLite tiene backend Clang para completar código inteligente. Consulte Uso de la finalización de código clang con CodeLite .
CodeLite está disponible para Windows, sin embargo, todavía no lo he probado en Windows.
fuente
¿Puedo agregar SublimeText 2? Ya tiene un complemento SublimeClang que admite la finalización de código inteligente basada en clang.
fuente
LLVM proporciona compilaciones de instantáneas de Windows : un conjunto de herramientas clang para Visual Studio como instalador de Windows. Actualmente debería integrarse con Visual Studio 2010, 2012 y 2013. Puede encontrar más información en la publicación de blog de LLVM Un camino a seguir para una cadena de herramientas de LLVM en Windows .
fuente
Clang tiene un controlador que es (al menos se supone que es) un sustituto directo de gcc, por lo que esencialmente cualquier IDE que pueda usar gcc como compilador también debería poder usar clang como compilador (aunque no lo he probado personalmente, así que no puedo dar fe de lo bien que funciona).
fuente
No.
Actualmente, solo xcode tiene un soporte mínimo de clang. Si desea utilizar el análisis estático clang en Windows, tendrá que hacerlo a través de la CLI.
fuente
KDevelop para Windows es otra opción. Aunque todavía se encuentra en las primeras etapas (actualmente necesita configurar el entorno para poder usar los compiladores MSVC / MinGW usted mismo), es utilizable y trae la asombrosa comprensión del código del IDE a Windows.
https://www.kdevelop.org/features
fuente
No es un IDE, pero es una especie de cruce entre IDE y editor simple, una alternativa útil para aquellos a quienes no les importa escribir configuraciones a mano: una combinación del editor Sublime Text 3 y el complemento EasyClangComplete (más el formato Clang para mantener su código ordenado y ordenado). Funciona bien en Windows gracias a los esfuerzos recientes para hacer compatible con LLVM MSVC ( Clang-cl también es capaz de generar archivos .PDB compatibles a partir de 2018, lo cual es crucial para la depuración).
Actualización: a partir de 2019, una alternativa mucho mejor y preparada para el futuro a EasyClangComplete es usar Clangd a través del complemento LSP .
fuente