makefile cross-compiling vlc

makefile - Hunk#1 FAILED en 1. ¿Qué significa eso?



cross-compiling vlc (3)

Consejos para depurar

  1. Agregue crlf al final del archivo de parche y pruebe si funciona
  2. prueba el comando --ignore-whitespace como en: markus@ubuntu:~$ patch -Np1 --ignore-whitespace -d software-1.0 < fix-bug.patch mira el tutorial de markus

Recibo el siguiente error al ejecutar make , y no tengo idea de qué significa ni qué hacer al respecto. ¿Alguien puede iluminarme o apuntarme en la dirección correcta?

(cd libdvdnav-git && patch -p1) < ../../contrib/src/dvdnav/dvdnav.patch patching file Makefile.am Hunk #1 FAILED at 1. 1 out of 1 hunk FAILED -- saving rejects to file Makefile.am.rej make: *** [dvdnav] Error 1

Estoy intentando cruzar compilar VLC para win32 (usando linux).


Es un error generado por el patch . Si abriera el archivo .patch , vería que está organizado en un grupo de segmentos, los llamados "hunks". Cada trozo identifica piezas de código correspondientes (por números de línea) en la versión anterior y nueva, las diferencias entre esos fragmentos de código y las similitudes entre ellos (el "contexto").

Un trozo puede fallar si las similitudes de un trozo no coinciden con lo que está en el archivo original. Cuando ve este error, casi siempre es porque está usando un parche para la versión incorrecta del código que está aplicando. Hay algunas formas de evitar esto:

  • Obtenga una versión actualizada de libdvdnav que ya incluye el parche (la mejor opción).
  • Obtenga un archivo .patch para la versión de libdvdnav que está libdvdnav .
  • Parche de forma manual. Para cada trozo en el parche, intente localizar el archivo y las líneas correspondientes en libdvdnav , y libdvdnav según las instrucciones del parche.
  • Tome la versión de libdvdnav que está más cerca de la versión para la que fue diseñado el archivo .patch (probablemente una mala idea).

Recibí el mensaje "trozos fallidos" cuando no estaba aplicando el parche en el directorio superior del proyecto git asociado. Estaba aplicando el parche (donde lo creé) en un subdirectorio.

Parece que los parches se pueden crear a partir de subdirectorios dentro de un proyecto git, pero no se aplican.