Besoin d’aide pour appliquer les correctifs MinGW pour la chaîne std et obtenir des extrémités inattendues

J’essaie d’appliquer ces correctifs:

http://tehsausage.com/mingw-to-ssortingng

Pour pouvoir utiliser des éléments std ssortingng auxquels je devrais avoir access de toute façon.

J’ai MinGW 4.7.2, et au début, j’ai essayé de copier les fichiers zip sans succès.

Maintenant, j’essaie d’appliquer manuellement les correctifs. J’ai copié les informations de correctif dans un fichier file.patch, je l’ai placé dans le même dossier que le fichier que je corrige et

patch < file.patch 

et puis je reçois:

  patching file stdio.h patch unexpectedly ends in middle of line Hunk #1 FAILED at 574. patch unexpectedly ends in middle of line 1 out of 1 hunk FAILED -- saving rejects to file stdio.h.rej patch unexpectedly ends in middle of line 

Je me suis assuré qu’il n’y avait pas d’espace blanc supplémentaire à la fin ..

S’il vous plaît aider!

OK, a installé la dernière version du site Web, a téléchargé les fichiers de correctif et s’est assuré qu’ils étaient propres.

J’ai appliqué chacun individuellement, et ils ont travaillé sans problème. Il y avait un avertissement indiquant qu’il s’agissait d’un “Suppression des CR restants du fichier”, mais cela a fonctionné sans problème.

chaque patch est appliqué dans le répertoire approprié; Par exemple, le stdio.patch est appliqué à stdio.h qui se trouve dans /mingw/include utilisant:

 patch  

idem pour wchar.patch

Le fichier os_defines.h se trouve dans /mingw/lib/gcc/mingw32/4.7.2/include/c++/mingw32/bits , et le correctif fonctionne également pour celui-ci.

J'ai créé un github avec les correctifs à l' adresse https://github.com/petesh/mingwpatches.git - vous pouvez cloner le référentiel ou télécharger les fichiers individuels à partir de cet emplacement. Chacun d’eux devrait fonctionner correctement sans plus qu’une plainte à propos de l’avertissement de fin de compte.

Après avoir examiné les fichiers de correctif, vous devrez probablement utiliser l’option -c de la commande patch . Cela indique à patch que les fichiers de patch proviennent d’un diff de contexte.

Par exemple

 $ patch -c < file.patch