Sortie de Qt 5.0

88
22
déc.
2012
C et C++

Qt 5.0 est sorti. C'est une évolution majeure de l'une des bibliothèques C++ les plus utilisées et certainement celle qui couvre le plus de besoins.

Bien qu'étant une version majeure, elle ne casse pas aussi violemment la compatibilité que lors du passage de Qt3 à Qt4. La liste des améliorations et les changements en profondeur dans l'organisation de Qt5 rendent néanmoins pertinent ce changement de version.

Le projet libre le plus emblématique exploitant la puissance de Qt est KDE, mais bien d'autres applications l'utilisent, qu'elles soient libres (VLC, Scribus, Avidemux, etc.) ou propriétaires (Google Earth, Opera, la Freebox V6, Skype, etc.).
Qt Logo

Merci à tous les contributeurs de cette dépêche : Nÿco, reno, Eric Bénard, ZeroHeure, Florent Zara, Philippe Fremy, olivierweb, detail_pratique, Raoul Volfoni, Laurent Pointal, Gof, baud123, ecyrbe, liberforce, Emmanuel C, Yves Bourguignon, tankey, Xavier Claude, Jean Gabes, Alexandre P, Arcaik, jeberger, Olivier, El Titi, Trollgouin, Benoît, RbN et jay.

Rencontre des Développeurs LLVM 2012

Posté par . Édité par baud123, Xavier Claude, Benoît Sibaud et Pierre Jarillon. Modéré par Pierre Jarillon. Licence CC by-sa
Tags : aucun
35
25
nov.
2012
C et C++

Les 7 et 8 novembre derniers a eu lieu la Rencontre des Développeurs LLVM 2012 (2012 LLVM Developers' Meeting) à San José en Californie. C'est la sixième rencontre du genre et les participants sont toujours de plus en plus nombreux. Dans son introduction, Chris Lattner, le père de LLVM, a fait un rapide bilan de l'année écoulée.

LLVM (anciennement appelé Low Level Virtual Machine en français : « machine virtuelle de bas niveau ») est une infrastructure de compilateur conçue pour optimiser la compilation, l'édition de liens, l'exécution d'un programme écrit dans un langage quelconque.

En plus des nouvelles fonctionnalités (notament C++11) et des nouvelles architectures prises en charge (Hexagon et MIPS64), Chris a fait état d'une communauté des développeurs LLVM et Clang très dynamique. En ce qui concerne LLVM, 78 nouveaux committers (personnes qui ont du code qui a été incorporé) sont arrivés cette année pour porter le total à 167 committers différents. Les chiffres sont quasiment identiques pour Clang (le frontend C/C++/Objective-C de LLVM) : 72 nouveaux committers pour un total de 132. Le code source de LLVM a grossi de 131 KLoc pour un total de 1,4 MLoc tandis que le code de Clang a grossi de 260 KLoc pour un total de 1,0 MLoc.

La conséquence est l'apparition de nouveaux problèmes : certains patchs ont du mal à être revus, l'infrastructure de build et de test de performance commence à montrer ses limites, la gestion des sorties de nouvelles versions se complique. Chris a donc fait un appel à la communauté pour demander de l'aide dans l'analyse des problèmes de performance, dans l'infrastructure de test, dans la documentation, etc.

Il a également demandé aux contributeurs les plus impliqués de devenir «propriétaire de code» (au sens responsable dudit code). Concrètement, il s'agit de prendre en charge une sous-partie de LLVM dont le propriétaire s'engage à assurer la bonne maintenance et évolution, notamment en passant en revue les patchs concernant cette sous-partie. Immédiatement, de nombreux volontaires se sont fait connaître ou ont été proposés.

La suite de la dépêche propose un résumé de quelques présentations qui ont eu lieu lors de cette rencontre.

codeurs, traducteurs, cppreference a besoin de vous

Posté par . Édité par baud123 et Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC by-sa
27
14
nov.
2012
C et C++

cppreference est un wiki dont le but est de fournir une documentation exhaustive des bibliothèques standard C (89, 99, 11) et C++ (03 et 11). Le contenu est disponible sous licences libres CC-BY-SA et GFDL.

Depuis quelques mois, le site anglophone a changé de peau pour utiliser mediawiki, lui assurant une meilleure lisibilité, la possibilité d'utiliser des templates… Les contenus ont depuis régulièrement progressé en qualité, même si certaines choses restent à faire.

La dernière initiative a été de générer les contenus français, mandarin, italien, espagnol, portugais et russe depuis le contenu anglais en utilisant l'outil google translate. Évidemment, si certaines phrases sont correctement traduites, d'autres sont à peine compréhensibles et un effort important reste à fournir pour arriver à une documentation francophone de qualité, mais une base est déjà présente sur laquelle s'appuyer.

Envie de découvrir toutes les nouveautés de la bibliothèque standard C++11 (multithreading, regexp…) tout en rendant service à la communauté francophone ? Ne perdez pas cette opportunité ! Faites chauffer gcc clang++ et rendez-vous sur fr.cppreference.com

C11 n'est pas encore mort

Posté par . Édité par Bruno Michel, baud123, Nÿco, Benoît Sibaud et Xavier Claude. Modéré par Nÿco.
59
26
déc.
2011
C et C++

La dernière norme du langage C a été publiée le 8 décembre 2011, la pré-version finale étant accepté le 10 octobre, peu avant le décès du regretté Denis Ritchie à l'origine du langage.

C11 intègre principalement la gestion du multithreading et rend optionnelles certaines fonctionnalités afin de faciliter la conformité des compilateurs vis-à-vis de la norme. La précédente norme C99 a eu beaucoup de mal à s'imposer auprès de certains éditeurs, certains refusant même de l'implémenter (notamment un vendeur d'environnement Basic, situé à Redmond).

Qt 4.8 est sorti

Posté par (page perso) . Édité par Gof, Florent Zara, _PhiX_ et Nÿco. Modéré par j. Licence CC by-sa
Tags :
39
19
déc.
2011
C et C++

La nouvelle version de Qt (prononcer « cute » comme mignon en anglais), le framework en C++ derrière KDE et bien d'autres applications libres, est sortie. Celle-ci est la dernière version majeure de la branche 4.x et la prochaine sera la branche 5.

Merci à Gof, Nÿco, _PhiX_ et reno pour leur aide lors de la rédaction de cette dépêche.

EFL 1.1 alpha

Posté par . Modéré par tuiu pol. Licence CC by-sa
40
16
nov.
2011
C et C++

Tôt ce matin, on pouvait lire l’annonce de la sortie de la version 1.1 alpha des bibliothèques Enlightenment Foundation Libraries, les EFL. Ces bibliothèques sont la base du gestionnaire de fenêtres et environnement de bureau ultra‐optimisé Enlightenment.

Enlightenment sur téléphone |Enlightenment sur laptop

Voilà quelque temps que le projet Enlightenment a commencé sa marche vers la publication de sa version stable finale, avec les EFL tout d’abord, et Enlightenment, lui‐même, pour conclure. Le voyage a été long, plus de 10 ans, mais le résultat est là. Cette version apporte un certain nombre de corrections de bogues, ainsi que de nouvelles fonctionnalités. La future version 1.1 sera la base d’Enlightenment DR17.

Dennis Ritchie, un père d’UNIX, nous a quittés

Posté par . Modéré par Benoît Sibaud. Licence CC by-sa
148
13
oct.
2011
C et C++

Dennis MacAlistair Ritchie, le créateur du langage C et d’UNIX, est décédé.
Dennis Ritchie est connu comme étant le créateur du langage C, un développeur clef du système d’exploitation UNIX, et le coauteur du célèbre livre référence du langage C, The C Programming Language, communément appelé K/R ou K&R (en référence à ses deux auteurs : Kernighan et Ritchie).

Son invention du langage C et sa participation au développement d’UNIX, au côté de Ken Thompson, ont fait de lui un pionnier de l’informatique moderne. Le langage C reste au début du XXIe siècle, un des langages les plus utilisés, tant dans le développement d’applications que de systèmes d’exploitation. UNIX a aussi eu une grande influence en établissant des concepts qui sont désormais totalement incorporés dans l’informatique moderne.

Il déclara que le langage C « semblait être une bonne chose à faire » et que n’importe qui à sa place aurait fait la même chose ; bien que son collègue des laboratoires Bell, [Bjarne Stroustrup], créateur du C++, répondit que « si Dennis avait décidé de consacrer cette décennie à des mathématiques ésotériques, UNIX aurait été mort‐né. »

Suite au succès d’UNIX, Dennis continua ses recherches dans les systèmes d’exploitation et les langages de programmation, dont notamment les systèmes d’exploitation Plan 9 et Inferno, et le langage de programmation Limbo.

Il est corécipiendaire avec Ken Thompson de l’édition 2011 du Prix japonais et du Prix Turing de 1983.

Source de la biographie : Wikipédia

Sundown, Houdini et Crustache

Posté par (page perso) . Modéré par Florent Zara. Licence CC by-sa
22
2
sept.
2011
C et C++

Vicent Martí, aka tanoku, est un des développeurs de github qui aime bien coder en C. Ce n'est donc pas très étonnant de trouver sur son compte github des bibliothèques en C pouvant servir au développement d'applications web. Je souhaite en particulier vous évoquer de trois bibliothèques sous licence ISC :

Crustache est une implémentation en C de Mustache, un moteur de templating. Des bindings pour Ruby sont également disponibles dans le dépôt git.

Houdini permet d'échapper des chaînes de caractères en UTF-8 pour le web. Et de faire l'inverse. Les trois types d'échappement sont :

  • convertir &, ", ', <, > et / en leur entité HTML correspondante (conformément à la recommandation de l'OWASP) ;
  • échappement des URI respectant la RFC ;
  • et échappement des URL (la différence avec l'échappement des URI est le remplacement des espaces par des +).

Et enfin, Sundown est un fork de libupskirt. Il permet de convertir du texte en Markdown vers du HTML. Nous utilisons Redcarpet, les bindings Ruby autour de Sundown, pour LinuxFr.org du fait de ses performances et de ses nombreuses options.

Coccigrep, un grep sémantique pour le langage C basé sur Coccinelle

Posté par (page perso) . Modéré par patrick_g. Licence CC by-sa
45
2
sept.
2011
C et C++

Lorsque l'on travaille sur un projet C comportant un certain nombre de fichiers et de lignes de code, il arrive fréquemment que l'on se pose des questions comme "Mais où est modifié le champ data de ma structure Packet ?". grep ne suffit pas pour répondre à ce genre de questions car ne comprenant pas C, il ne sait pas, par exemple, que la variable monbopkt est une structure Packet.

coccigrep, basé sur coccinelle qui est un outil très puissant de recherche et de modification automatique de code, est un logiciel libre chargé de répondre à ce genre de questions. Il vient d'être publié en version 1.0rc1, sous licence GPL v3. Il est écrit en Python et s'interface avec les éditeurs Vim et Emacs, ce qui permet de faire les recherches depuis l'éditeur.

Le standard C++0x a enfin été voté

Posté par (page perso) . Modéré par Lucas Bonnet. Licence CC by-sa
76
18
août
2011
C et C++

Le nouveau standard du langage C++ a été voté ce vendredi 12 août. Initialement prévu pour 2008 ou 2009, il a pris du retard, notamment à cause de problèmes avec certaines fonctionnalités. Malgré cette date, beaucoup l'appellent quand même C++0x et il suffit de le nommer C++0xB pour que le nom soit conservé. La publication officielle ne devrait cependant pas arriver avant quelques mois.

Heureusement pour les utilisateurs, ces fonctionnalités ont déjà commencé à être implémentées dans les différents compilateurs et bibliothèques standard. Ceci devrait permettre de ne pas attendre trop longtemps avant de pouvoir profiter de ces nouveautés, voire d'en profiter dès à présent pour certaines. Par exemple, sous GCC, il faut passer l'option -std=c++0x au compilateur pour utiliser des évolutions qui sont déjà implémentées.

Une sélection des principales nouveautés est présentée en seconde partie de dépêche.

Merci à moules< pour son aide lors de la rédaction de cette dépêche.

Science et éducation : EZ-Draw 1.0 est sorti

Posté par . Modéré par patrick_g. Licence CC by-sa
28
22
juin
2011
C et C++

EZ-Draw (Easy Draw) est un module en langage C qui facilite l’écriture de programmes graphiques, avec une gestion simplifiée des évènements. Il permet de créer des fenêtres, y dessiner, réagir à la souris et au clavier, faire des animations, etc..

EZ-Draw fonctionne à la fois sous X11 (Linux, Mac OS X, et autres Unix) et Windows (Seven, Vista, XP, etc.) ; en interne, il est basé respectivement sur la bibliothèque Xlib et sur l’API Win32, et il masque tous leurs aspects techniques.

PCC 1.0 est sorti… depuis le 1er avril !

Posté par (page perso) . Modéré par patrick_g.
24
16
juin
2011
C et C++

Comment cette information majeure a‐t‐elle pu échapper aux journaux de LinuxFr ? À l’avenir, il faudra garder l’œil ouvert, car le futur est aussi prometteur

Pour plus d’infos, la dépêche précédente était déjà bien complète !

Avec un compilateur C simple, portable, et sous licence compatible, les *BSD pourraient se libérer de la dépendance à GCC qui pose problème (infrastructure compliquée… comme de la licence GPLv3 ?!). Comme rappelé dans les questions aux développeurs OpenBSD, les espoirs se tournent également du côté de LLVM / Clang, qui progresse vite.

Un autre petit compilateur léger, rapide et pratique, quand on ne veut pas déployer toute l’armada GCC pour jouer sur un poste : TCC !

Plus aucune raison pour ne pas contribuer à des projets en C (sous BSD) ?!

GnuTLS ajoute le support de DTLS

Posté par . Modéré par Xavier Teyssier. Licence CC by-sa
38
12
avr.
2011
C et C++

GnuTLS est une bibliothèque logicielle libre diffusée sous la licence LGPL 2.1 et plus et écrite en C et C++. GnuTLS implémente les protocoles réseau SSL 3.0, TLS 1.0, TLS 1.1 et TLS 1.2. Ceux-là même utilisés par tous les navigateurs web quand vous surfez en HTTPS.
Une version majeure est en cours de développement, elle ajoute une implémentation du protocole DTLS et améliore la compatibilité avec OpenSSL.