Je suis d'accord avec onur là, j'arrive plus ou moins à m'en sortir avec les autotools quand il le faut maintenant (alors qu'au départ pas du tout, c'est vraiment compliqué...), mais je trouve toujours que c'est nul. Ce qui me dérange entre autres:
* Bordel de versions plus ou moins incompatibles entre elles. Ils font des changements incompatibles tout le temps. Du coup, on est obligés de distribuer des fichiers prégénérés, ce qui est lourd. En comparaison,
qmake est presque entièrement compatible même de Qt 3 à Qt 4 (si le projet n'utilise pas Qt, il y a des chances que le .pro fonctionne avec les 2 versions sans rien changer, sinon,
qt3to4 s'occupe aussi du fichier .pro).
* Je trouve que le principe-même de
autoconf (compiler des programmes bidon pour tester l'existence de certaines fonctions) s'approche à l'usine à gaz, il vaut mieux coder directement du code portable.
* Les macros
autoconf par défaut insistent à tester l'existence de fonctions dont l'existence est garantie par le standard ISO C90 (ANSI C89)! Ce n'est pas croyable, on est en 2007, ce standard existe depuis 17-18 années. Je veux voir le système d'exploitation qui de nos jours ne propose toujours pas
memcpy!

Même TIGCC le propose.
* Il y a d'autres tests totalement inutiles qui gaspillent du temps de compilation, par exemple les tests pour les compilateurs Fortran et Java (GCJ) pour des projets qui n'utilisent pas de Fortran ni de Java. Une fois de plus, ce sont les macros par défaut, c'est personnalisable, mais on doit écrire plus de code pour ne pas tester de choses inutiles, alors que ça devrait être le contraire.
*
automake qui insiste par défaut sur l'existence de fichiers comme AUTHORS qui ne servent à rien pour la plupart, et qui en plus ne portent pas d'extension (donc même KDE ne reconnaît pas toujours le bon type de fichier, et sous Window$, le type n'est forcément pas reconnu sans extension). (Il faut déclarer le projet comme "foreign" pour qu'il arrête de faire ça.)
* Utilisation intensive de shell scripts *nix, pas portable (alors que ça prétend être un outil de "portabilité"

).