X2Go Bug report logs - #578
nx-libs, Jpeg.cpp compilation error with jpeg-9a, with suggested patch

version graph

Package: nx-libs; Maintainer for nx-libs is X2Go Developers <x2go-dev@lists.x2go.org>;

Reported by: Gabriel Marcano <gabemarcano@yahoo.com>

Date: Wed, 20 Aug 2014 03:30:02 UTC

Severity: normal

Tags: patch, pending

Found in version HEAD

Fixed in version 2:3.5.0.28

Done: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>

Bug is archived. No further changes may be made.

Full log


🔗 View this message in rfc822 format

MIME-Version: 1.0
X-Mailer: MIME-tools 5.502 (Entity 5.502)
X-Loop: owner@bugs.x2go.org
From: owner@bugs.x2go.org (X2Go Bug Tracking System)
Subject: Bug#578 closed by Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
 (X2Go issue (in src:nx-libs) has been marked as closed)
Message-ID: <handler.578.c.141591223031472.notifdone@bugs.x2go.org>
References: <20141113205645.BC6903D189@ymir.das-netzwerkteam.de>
X-X2go-PR-Keywords: pending patch
X-X2go-PR-Message: they-closed 578
X-X2go-PR-Package: nx-libs
Date: Thu, 13 Nov 2014 21:00:17 +0000
Content-Type: multipart/mixed; boundary="----------=_1415912417-32702-0"
[Message part 1 (text/plain, inline)]
This is an automatic notification regarding your Bug report
which was filed against the nx-libs package:

#578: nx-libs, Jpeg.cpp compilation error with jpeg-9a, with suggested patch

It has been closed by Mike Gabriel <mike.gabriel@das-netzwerkteam.de>.

Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact Mike Gabriel <mike.gabriel@das-netzwerkteam.de> by
replying to this email.


-- 
X2Go Bug Tracking System
Contact owner@bugs.x2go.org with problems
[Message part 2 (message/rfc822, inline)]
From: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
To: 578-submitter@bugs.x2go.org
Cc: control@bugs.x2go.org, 578@bugs.x2go.org
Subject: X2Go issue (in src:nx-libs) has been marked as closed
Date: Thu, 13 Nov 2014 21:56:45 +0100 (CET)
close #578
thanks

Hello,

we are very hopeful that X2Go issue #578 reported by you
has been resolved in the new release (2:3.5.0.28) of the
X2Go source project »src:nx-libs«.

You can view the complete changelog entry of src:nx-libs (2:3.5.0.28)
below, and you can use the following link to view all the code changes
between this and the last release of src:nx-libs.

    http://code.x2go.org/gitweb?p=nx-libs.git;a=commitdiff;h=39202bb0cfad1a5d78135a205033398003769997;hp=aeb5e8ad5491b9f950cb038ca6eb6b1e15fef05a

If you feel that the issue has not been resolved satisfyingly, feel
free to reopen this bug report or submit a follow-up report with
further observations described based on the new released version
of src:nx-libs.

Thanks a lot for contributing to X2Go!!!

light+love
X2Go Git Admin (on behalf of the sender of this mail)

---
X2Go Component: src:nx-libs
Version: 2:3.5.0.28-0x2go1
Status: RELEASE
Date: Thu, 13 Nov 2014 21:39:24 +0100
Fixes: 269 578 585 610 621
Changes: 
 nx-libs (2:3.5.0.28-0x2go1) RELEASED; urgency=medium
 .
   [ Mike Gabriel ]
   * Provide COPYING file in tarball. Update debian/copyright.
   * Add 025_nxcomp-fix-ftbfs-against-jpeg9a.full+lite.patch. Fix FTBFS when
     built against libjpeg9a. Thanks to Gabriel Marcano for sending this in.
     (Fixes: #578).
   * Update 027_nxcomp_abstract-X11-socket.full+lite: Add patch header
     (Description: and Author: field).
   * Add 607_nxcomp_macosx-X11-launcher-in-private-tmp.full+lite.patch. Fix check
     for launchd socket path in $DISPLAY on recent Mac OS X systems.
   * Rename 605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full.patch to
     605_nxcomp_Types.h-dont-use-STL-internals-on-libc++.full+lite.patch. It is
     an nxcomp patch that needs to be applied in the nx-libs-lite _and_ the
     nx-libs-full tarball release.
   * debian/libnx-x11.postinst:
     + Don't use dpkg-architecture (bin:package dpkg-dev) in postinst script.
       Instead prep a libnx-x11.postinst script at build time. (Fixes:
       #621).
   * debian/rules:
     + No such option for dh_auto_build: --with quilt."
   * nx-libs.spec:
     + Adapt installation of debian/VERSION as VERSION.x2goagent and
       nxcomp/VERSION to latest changes introduced by
       400_nxcomp-version.full+lite.patch.
     + Additionally adapt to building on openSUSE/SLES.
     + SUSE hack for linking to files in libX11-6 and libXext6.
     + Make sure all package directories are owned by one of the
       built bin:packages.
     + Fix Xinerama symlink installation into RPM bin:package
       libNX_Xinerama. (Fixes: #269).
 .
   [ Nito Martinez ]
   * Add 400_nxcomp-version.full+lite.patch. Allow 4-digit version comparison
     during NX session handshake. (Fixes: #610).
 .
   [ Ulrich Sibiller ]
   * Add 207_nxagent_fix-xfixes-selection.full.patch. Fix selection handling
     when XFIXES is enabled. (Fixes: #585).

[Message part 3 (message/rfc822, inline)]
From: Gabriel Marcano <gabemarcano@yahoo.com>
To: "submit@bugs.x2go.org" <submit@bugs.x2go.org>
Subject: nx-libs, Jpeg.cpp compilation error with jpeg-9a, with suggested patch
Date: Tue, 19 Aug 2014 20:24:16 -0700
[Message part 4 (text/plain, inline)]
Package: nx-libs
Version: HEAD
Tags: Patch

Found this problem while browsing:
    https://bugs.gentoo.org/show_bug.cgi?id=481360

Compiling nx-libs against jpeg-9a leads to a compilation error. Specifically:

    g++ -c -O3 -fno-rtti -fno-exceptions -I../nx-X11/exports/include
        -Wmissing-declarations -fPIC -DIN_ADDR_T=in_addr_t -DVERSION=\"3.5.0\"
        -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\"
        -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -Wall
        -Wpointer-arith   Jpeg.cpp
    Jpeg.cpp: In function ‘int DecompressJpeg16(unsigned char*, int,
        unsigned int, unsigned int, unsigned char*, int)’:
    Jpeg.cpp:443:29: error: invalid conversion from ‘int’ to ‘boolean’
        [-fpermissive]
    jpeg_read_header(&cinfo, 1);
                                ^
    In file included from Jpeg.cpp:29:0:
    /usr/include/jpeglib.h:1039:13: note: initializing argument 2 of ‘int
        jpeg_read_header(j_decompress_ptr, boolean)’
    EXTERN(int) jpeg_read_header JPP((j_decompress_ptr cinfo,
                ^
    Jpeg.cpp: In function ‘int DecompressJpeg24(unsigned char*, int,
        unsigned int, unsigned int, unsigned char*, int)’:
    Jpeg.cpp:584:29: error: invalid conversion from ‘int’ to ‘boolean’
        [-fpermissive]
    jpeg_read_header(&cinfo, 1);
                                ^
    In file included from Jpeg.cpp:29:0:
    /usr/include/jpeglib.h:1039:13: note: initializing argument 2 of ‘int
        jpeg_read_header(j_decompress_ptr, boolean)’
    EXTERN(int) jpeg_read_header JPP((j_decompress_ptr cinfo,
                ^
    Jpeg.cpp: In function ‘int DecompressJpeg32(unsigned char*, int, unsigned
        int, unsigned int, unsigned char*, int)’:
    Jpeg.cpp:721:29: error: invalid conversion from ‘int’ to ‘boolean’
        [-fpermissive]
    jpeg_read_header(&cinfo, 1);
                                ^
    In file included from Jpeg.cpp:29:0:
    /usr/include/jpeglib.h:1039:13: note: initializing argument 2 of ‘int
        jpeg_read_header(j_decompress_ptr, boolean)’
    EXTERN(int) jpeg_read_header JPP((j_decompress_ptr cinfo,
                ^
    Jpeg.cpp: In function ‘boolean JpegFillInputBuffer(j_decompress_ptr)’:
    Jpeg.cpp:836:10: error: invalid conversion from ‘int’ to ‘boolean’
        [-fpermissive]
    return 1;
            ^
    Makefile:82: recipe for target 'Jpeg.o' failed
    make: *** [Jpeg.o] Error 1

I am attaching a patch to address the problem. Specifically, it appears that
jpeg-9a changed the definition for its "boolean" type from an int to some other
 type (bool in C++, it seems). Using TRUE and FALSE, as provided by the jpeg
library, is what was done to address the problem. After applying the patch
to HEAD (commit 0e3b414ea6ecb6cc359d3b95f5cfeb6096066139), Jpeg.cpp compiles
fine.


Configuration:

Compiling against jpeg-9a.

$ gcc -v
    Using built-in specs.
    COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.9.0/gcc
    COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.9.0/lto-wrapper
    Target: x86_64-pc-linux-gnu
    Configured with: /var/tmp/portage/sys-devel/gcc-4.9.0/work/gcc-4.9.0/configure
    --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr
    --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.9.0
    --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.0/include
    --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.0
    --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.0/man
    --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.9.0/info
    --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.0/include/g++-v4
    --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.9.0/python
    --enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt
    --disable-werror --with-system-zlib --enable-nls --without-included-gettext
    --enable-checking=release --with-bugurl=https://bugs.gentoo.org/
    --with-pkgversion='Gentoo 4.9.0 p1.0, pie-0.6.0' --enable-libstdcxx-time
    --enable-shared --enable-threads=posix --enable-__cxa_atexit
    --enable-clocale=gnu --enable-multilib --with-multilib-list=m32,m64
    --disable-altivec --disable-fixed-point --enable-targets=all
    --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp
    --enable-lto --without-cloog
    Thread model: posix
    gcc version 4.9.0 (Gentoo 4.9.0 p1.0, pie-0.6.0) 

$ autoreconf --version
    autoreconf (GNU Autoconf) 2.69


Steps to reproduce:

1. "git clone git://code.x2go.org/nx-libs.git" repository.
2. Change to the "nxcomp" directory.
3. Run "autoreconf" and then do "make Jpeg.o".

Expected outcome:
Successful compilation.

Actual outcome:
Compilation failure, see earlier in the report for the error messages.
[nxlibs-jpeg9a.patch (text/x-patch, attachment)]

Send a report that this bug log contains spam.


X2Go Developers <owner@bugs.x2go.org>. Last modified: Thu Nov 21 15:20:18 2024; Machine Name: ymir.das-netzwerkteam.de

X2Go Bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.