Xpra: Ticket #1250: build failure on OpenSuse

I am trying to build the latest svn trunk on OpenSuse? Tumbleweed. I get the following error:

PIT-MINTON-L7:~/src/Xpra/trunkantoine/src$ python setup.py --help-command
setup.py --help-command
Xpra version 0.18.0
found pkg-config version: 0.29.1
build switches:
* enc_x264             : Y
* enc_x265             : Y
* xvid                 : N
* enc_ffmpeg           : Y
* nvenc4               : N
* nvenc5               : N
* nvenc6               : N
* vpx                  : Y
* webp                 : N
* pillow               : Y
* dec_avcodec2         : Y
* csc_swscale          : Y
* csc_opencl           : N
* csc_cython           : Y
* csc_opencv           : Y
* csc_libyuv           : N
* memoryview           : Y
* bencode              : Y
* cython_bencode       : Y
* vsock                : Y
* clipboard            : Y
* server               : Y
* client               : Y
* dbus                 : Y
* x11                  : Y
* gtk_x11              : Y
* gtk2                 : Y
* gtk3                 : N
* html5                : Y
* pam                  : N
* sound                : Y
* opengl               : Y
* printing             : Y
* rebuild              : Y
* annotate             : Y
* warn                 : Y
* strict               : Y
* shadow               : Y
* debug                : N
* PIC                  : Y
* Xdummy               : Auto
* Xdummy_wrapper       : Auto
* verbose              : N
* tests                : N
* bundle_tests         : N
'nvcc --version' failed with return code 127
stderr: None
updated ./xpra/build_info.py with:
* BUILD_BIT            = 64bit
* BUILD_CPU            = x86_64
* BUILD_DATE           = 2016-07-08
* BUILD_OS             = Linux openSUSE 20160705 n/a
* BUILD_TIME           = 11:31
* BUILT_BY             = bminton
* BUILT_ON             = PIT-MINTON-L7
* COMPILER_VERSION     = gcc (SUSE Linux) 6.1.1 20160601 [gcc-6-branch revision 236989]
* CYTHON_VERSION       = 0.23.4
* LINKER_VERSION       = GNU ld (GNU Binutils; openSUSE Tumbleweed) 2.26.0.20160309-2
* PYTHON_VERSION       = 2.7.10
* RELEASE_BUILD        = True
* lib_gtk              = 3.20.6
* lib_pycairo          = 1.10.0
* lib_pygobject        = 2.28.6
* lib_pygtk            = 2.24.0
* lib_vpx              = 1.5.1
* lib_x11              = 1.6.3
* lib_x264             = 0.148.2705 3f5ed56
* lib_x265             = 1.9
* lib_xcomposite       = 0.4.4
* lib_xdamage          = 1.1.4
* lib_xext             = 1.3.3
* lib_xfixes           = 5.0.2
* lib_xkbfile          = 1.0.9
* lib_xrandr           = 1.5.0
* lib_xtst             = 1.2.2
found gcc version: 6.1.1
Standard commands:
  build            build everything needed to install
  build_py         "build" pure Python modules (copy to build directory)
  build_ext        build C/C++ and Cython extensions (compile/link to build directory)
  build_clib       build C/C++ libraries used by Python extensions
  build_scripts    "build" scripts (copy and fixup #! line)
  clean            clean up temporary files from 'build' command
  install          install everything from build directory
  install_lib      install all Python modules (extensions and pure Python)
  install_headers  install C/C++ header files
  install_scripts  install scripts (Python or otherwise)
  install_data     install data files
  sdist            create a source distribution (tarball, zip file, etc.)
  register         register the distribution with the Python package index
  bdist            create a built (binary) distribution
  bdist_dumb       create a "dumb" built distribution
  bdist_rpm        create an RPM distribution
  bdist_wininst    create an executable installer for MS Windows
  upload           upload binary package to PyPI
  check            perform some checks on the package
Extra commands:
  build_conf       build everything needed to install
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help
PIT-MINTON-L7:~/src/Xpra/trunk/src$ python setup.py build
setup.py build
Xpra version 0.18.0
found pkg-config version: 0.29.1
build switches:
* enc_x264             : Y
* enc_x265             : Y
* xvid                 : N
* enc_ffmpeg           : Y
* nvenc4               : N
* nvenc5               : N
* nvenc6               : N
* vpx                  : Y
* webp                 : N
* pillow               : Y
* dec_avcodec2         : Y
* csc_swscale          : Y
* csc_opencl           : N
* csc_cython           : Y
* csc_opencv           : Y
* csc_libyuv           : N
* memoryview           : Y
* bencode              : Y
* cython_bencode       : Y
* vsock                : Y
* clipboard            : Y
* server               : Y
* client               : Y
* dbus                 : Y
* x11                  : Y
* gtk_x11              : Y
* gtk2                 : Y
* gtk3                 : N
* html5                : Y
* pam                  : N
* sound                : Y
* opengl               : Y
* printing             : Y
* rebuild              : Y
* annotate             : Y
* warn                 : Y
* strict               : Y
* shadow               : Y
* debug                : N
* PIC                  : Y
* Xdummy               : Auto
* Xdummy_wrapper       : Auto
* verbose              : N
* tests                : N
* bundle_tests         : N
'nvcc --version' failed with return code 127
stderr: None
updated ./xpra/build_info.py with:
* BUILD_BIT            = 64bit
* BUILD_CPU            = x86_64
* BUILD_DATE           = 2016-07-08
* BUILD_OS             = Linux openSUSE 20160705 n/a
* BUILD_TIME           = 11:33
* BUILT_BY             = bminton
* BUILT_ON             = PIT-MINTON-L7
* COMPILER_VERSION     = gcc (SUSE Linux) 6.1.1 20160601 [gcc-6-branch revision 236989]
* CYTHON_VERSION       = 0.23.4
* LINKER_VERSION       = GNU ld (GNU Binutils; openSUSE Tumbleweed) 2.26.0.20160309-2
* PYTHON_VERSION       = 2.7.10
* RELEASE_BUILD        = True
* lib_gtk              = 3.20.6
* lib_pycairo          = 1.10.0
* lib_pygobject        = 2.28.6
* lib_pygtk            = 2.24.0
* lib_vpx              = 1.5.1
* lib_x11              = 1.6.3
* lib_x264             = 0.148.2705 3f5ed56
* lib_x265             = 1.9
* lib_xcomposite       = 0.4.4
* lib_xdamage          = 1.1.4
* lib_xext             = 1.3.3
* lib_xfixes           = 5.0.2
* lib_xkbfile          = 1.0.9
* lib_xrandr           = 1.5.0
* lib_xtst             = 1.2.2
found gcc version: 6.1.1
running build
running build_py
copying xpra/build_info.py -> build/lib.linux-x86_64-2.7/xpra
running build_ext
building 'xpra.codecs.dec_avcodec2.decoder' extension
gcc -pthread -fno-strict-aliasing -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DNDEBUG -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -g -DOPENSSL_LOAD_CONF -fPIC -I/usr/include/ffmpeg -I/usr/include/python2.7 -c xpra/codecs/dec_avcodec2/decoder.c -o build/temp.linux-x86_64-2.7/xpra/codecs/dec_avcodec2/decoder.o -Wall -Werror -fPIC
xpra/codecs/dec_avcodec2/decoder.c: In function ‘__pyx_pf_4xpra_6codecs_12dec_avcodec2_7decoder_7Decoder_26decompress_image’:
xpra/codecs/dec_avcodec2/decoder.c:8235:23: error: implicit declaration of function ‘avcodec_send_packet’ [-Werror=implicit-function-declaration]
         __pyx_v_ret = avcodec_send_packet(__pyx_v_self->codec_ctx, (&__pyx_v_avpkt));
                       ^~~~~~~~~~~~~~~~~~~
xpra/codecs/dec_avcodec2/decoder.c:8416:23: error: implicit declaration of function ‘avcodec_receive_frame’ [-Werror=implicit-function-declaration]
         __pyx_v_ret = avcodec_receive_frame(__pyx_v_self->codec_ctx, __pyx_v_self->av_frame);
                       ^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
error: command 'gcc' failed with exit status 1

Thanks, Brian Minton



Fri, 08 Jul 2016 16:00:10 GMT - Antoine Martin: status, description changed; resolution set

Sorry, again this is not a bug: since #1242, we will only support ffmpeg 3.1+ going forward. The way this is managed for RPM distros is to provide our own private ffmpeg packages rather than trying to match the often non-existent or buggy versions each distro may provide, see #613 for details.


Sat, 25 Mar 2017 14:27:50 GMT - Antoine Martin:

See also #1037


Sat, 23 Jan 2021 05:19:07 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1250