2017-12-29 14:20 GMT+01:00 Kornel Benko <kor...@lyx.org>:

> All of sudden, cmake(cpack) started producing wrong debian packages for
> one project.
>

Did the project change in some way or was it the packaging environment that
changed?
I'd like to know a bit more details even if the solution below works to
determine if this was a regression in CPack or something else.


> This is the output of debian package manager:
>
>         dpkg: warning: downgrading lyx24 from 2.4.0-50424git-g3a4b233 to
> 2.4.0-50422git-gd6fb2ab
>         (Reading database ... 422667 files and directories currently
> installed.)
>         Preparing to unpack lyx24-2.4.0-50422git-Linux.deb ...
>         Unpacking lyx24 (2.4.0-50422git-gd6fb2ab) over
> (2.4.0-50424git-g3a4b233) ...
>         dpkg: error processing archive lyx24-2.4.0-50422git-Linux.deb
> (--install):
>          corrupted filesystem tarfile - corrupted package archive
>         dpkg-deb: error: subprocess paste was killed by signal (Broken
> pipe)
>         Errors were encountered while processing:
>          lyx24-2.4.0-50422git-Linux.deb
>
> Analysing the data.tar.gz gives no hint. What helps is a sequence of
> commands using the system's 'tar'.
>
>         # ar xv  lyx24-2.4.0-50422git-Linux.deb  data.tar.gz
>         # sudo tar axf data.tar.gz
>         # tar cf data.tar ./usr
>         # gzip -f data.tar
>         # ar rv  lyx24-2.4.0-50422git-Linux.deb  data.tar.gz
>
> Now everything is OK.
> Other projects do not show this behaviour.
> This is cmake 3.10.20171229-g3e1f5b11, but the same happens with earlier
> version.
>

I'm surprised that this fixed the problem but from what you're describing
I'd say that some paths in the data tarball are too long for the paxr
version of tar to handle correctly (this is the default tar that is used by
CPack and debian packages as it is the most portable one).
If I'm right you could:

1) shorten the file paths in the archive
2) use gnu tar instead by setting CPACK_DEBIAN_ARCHIVE_TYPE to gnutar

See
https://cmake.org/cmake/help/v3.10/module/CPackDeb.html#variable:CPACK_DEBIAN_ARCHIVE_TYPE

Regards,
Domen
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake-developers

Reply via email to