Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libphidget22 noetic build fails on the build farm #77

Closed
mintar opened this issue Jun 4, 2020 · 2 comments
Closed

libphidget22 noetic build fails on the build farm #77

mintar opened this issue Jun 4, 2020 · 2 comments

Comments

@mintar
Copy link
Contributor

mintar commented Jun 4, 2020

Full log is here: http://build.ros.org/job/Nbin_uF64__libphidget22__ubuntu_focal_amd64__binary/2/consoleFull#console-section-15

The relevant part of the log is at the end (of course):

23:18:32 [ 37%] Performing patch step for 'EP_libphidget22'
23:18:32 cd /tmp/binarydeb/ros-noetic-libphidget22-1.0.0/obj-x86_64-linux-gnu/libphidget22-src && patch -p1 < /tmp/binarydeb/ros-noetic-libphidget22-1.0.0/patch/libphidgets22-1.6.20200417-fix-warnings.patch
23:18:32 patching file configure
23:18:32 patching file src/class/dataadapter.gen.c
23:18:32 patching file src/class/distancesensor.gen.c
23:18:32 patching file src/device/dataadapterdevice.c
23:18:32 Reversed (or previously applied) patch detected!  Assume -R? [n] 
23:18:32 Apply anyway? [n] 
23:18:32 Skipping patch.
23:18:32 1 out of 1 hunk ignored -- saving rejects to file src/device/dataadapterdevice.c.rej
23:18:32 patching file src/device/genericdevice.c
23:18:32 patching file src/phidget.c
23:18:32 make[4]: *** [CMakeFiles/EP_libphidget22.dir/build.make:106: EP_libphidget22-prefix/src/EP_libphidget22-stamp/EP_libphidget22-patch] Error 1
23:18:32 make[4]: Leaving directory '/tmp/binarydeb/ros-noetic-libphidget22-1.0.0/obj-x86_64-linux-gnu'
23:18:32 make[3]: Leaving directory '/tmp/binarydeb/ros-noetic-libphidget22-1.0.0/obj-x86_64-linux-gnu'
23:18:32 make[3]: *** [CMakeFiles/Makefile2:225: CMakeFiles/EP_libphidget22.dir/all] Error 2
23:18:32 make[2]: *** [Makefile:133: all] Error 2
23:18:32 make[2]: Leaving directory '/tmp/binarydeb/ros-noetic-libphidget22-1.0.0/obj-x86_64-linux-gnu'
23:18:32 dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j1 returned exit code 2
23:18:32 make[1]: Leaving directory '/tmp/binarydeb/ros-noetic-libphidget22-1.0.0'
23:18:32 make[1]: *** [debian/rules:38: override_dh_auto_build] Error 25
23:18:32 make: *** [debian/rules:22: build] Error 2
23:18:32 dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
23:18:32 E: Building failed
23:18:32 Traceback (most recent call last):
23:18:32   File "/tmp/ros_buildfarm/ros_buildfarm/binarydeb_job.py", line 138, in build_binarydeb
23:18:32     subprocess.check_call(cmd, cwd=source_dir)
23:18:32   File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
23:18:32     raise CalledProcessError(retcode, cmd)
23:18:32 subprocess.CalledProcessError: Command '['apt-src', 'build', 'ros-noetic-libphidget22']' returned non-zero exit status 1.

The prerelease test does not fail, and it completes the Performing patch step for 'EP_libphidget22' without problems:

corresponding part of the local prerelease log (click to expand)
# BEGIN SECTION: Run Dockerfile - build and install
# BEGIN SUBSECTION: build workspace in isolation and install
Invoking '_CATKIN_SETUP_DIR=/opt/ros/noetic . /opt/ros/noetic/setup.sh && PYTHONIOENCODING=utf_8 PYTHONUNBUFFERED=1 catkin_make_isolated --install --cmake-args -DBUILD_TESTING=0 -DCATKIN_SKIP_TESTING=1' in '/tmp/ws'
Base path: /tmp/ws
Source space: /tmp/ws/src
Build space: /tmp/ws/build_isolated
Devel space: /tmp/ws/devel_isolated
Install space: /tmp/ws/install_isolated
Additional CMake Arguments: -DBUILD_TESTING=0 -DCATKIN_SKIP_TESTING=1
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~  traversing 15 packages in topological order:
~~  - libphidget22
~~  - phidgets_api
~~  - phidgets_accelerometer
~~  - phidgets_analog_inputs
~~  - phidgets_digital_inputs
~~  - phidgets_drivers
~~  - phidgets_gyroscope
~~  - phidgets_ik
~~  - phidgets_magnetometer
~~  - phidgets_msgs
~~  - phidgets_digital_outputs
~~  - phidgets_high_speed_encoder
~~  - phidgets_motors
~~  - phidgets_spatial
~~  - phidgets_temperature
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The packages or cmake arguments have changed, forcing cmake invocation

==> Processing catkin package: 'libphidget22'
==> Creating build directory: 'build_isolated/libphidget22'
==> cmake /tmp/ws/src/phidgets_drivers/libphidget22 -DCATKIN_DEVEL_PREFIX=/tmp/ws/devel_isolated/libphidget22 -DCMAKE_INSTALL_PREFIX=/tmp/ws/install_isolated -DBUILD_TESTING=0 -DCATKIN_SKIP_TESTING=1 -G Unix Makefiles in '/tmp/ws/build_isolated/libphidget22'
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/lib/ccache/cc
-- Check for working C compiler: /usr/lib/ccache/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/lib/ccache/c++
-- Check for working CXX compiler: /usr/lib/ccache/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using CATKIN_DEVEL_PREFIX: /tmp/ws/devel_isolated/libphidget22
-- Using CMAKE_PREFIX_PATH: /opt/ros/noetic
-- This workspace overlays: /opt/ros/noetic
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.8.2", minimum required is "3") 
-- Using PYTHON_EXECUTABLE: /usr/bin/python3
-- Using Debian Python package layout
-- Found PY_em: /usr/lib/python3/dist-packages/em.py  
-- Using empy: /usr/lib/python3/dist-packages/em.py
-- Using CATKIN_SKIP_TESTING: 1 (implying CATKIN_ENABLE_TESTING=OFF)
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /tmp/ws/build_isolated/libphidget22/test_results
-- Forcing gtest/gmock from source, though one was otherwise available.
-- Found gtest sources under '/usr/src/googletest': gtests will be built
-- Found gmock sources under '/usr/src/googletest': gmock will be built
-- Found PythonInterp: /usr/bin/python3 (found version "3.8.2") 
-- Found Threads: TRUE  
-- Using Python nosetests: /usr/bin/nosetests3
-- catkin 0.8.6
-- BUILD_SHARED_LIBS is on
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    BUILD_TESTING


-- Build files have been written to: /tmp/ws/build_isolated/libphidget22
==> make in '/tmp/ws/build_isolated/libphidget22'
Scanning dependencies of target EP_libphidget22
[ 12%] Creating directories for 'EP_libphidget22'
[ 25%] Performing download step (download, verify and extract) for 'EP_libphidget22'
-- Downloading...
   dst='/tmp/ws/build_isolated/libphidget22/EP_libphidget22-prefix/src/libphidget22-1.6.20200417.tar.gz'
   timeout='none'
-- Using src='https://www.phidgets.com/downloads/phidget22/libraries/linux/libphidget22/libphidget22-1.6.20200417.tar.gz'
-- [download 1% complete]
-- [download 3% complete]
-- [download 4% complete]
-- [download 6% complete]
-- [download 7% complete]
-- [download 9% complete]
-- [download 10% complete]
-- [download 12% complete]
-- [download 13% complete]
-- [download 15% complete]
-- [download 16% complete]
-- [download 18% complete]
-- [download 19% complete]
-- [download 21% complete]
-- [download 22% complete]
-- [download 24% complete]
-- [download 25% complete]
-- [download 27% complete]
-- [download 28% complete]
-- [download 30% complete]
-- [download 31% complete]
-- [download 33% complete]
-- [download 34% complete]
-- [download 36% complete]
-- [download 37% complete]
-- [download 39% complete]
-- [download 40% complete]
-- [download 42% complete]
-- [download 43% complete]
-- [download 45% complete]
-- [download 46% complete]
-- [download 48% complete]
-- [download 49% complete]
-- [download 51% complete]
-- [download 52% complete]
-- [download 54% complete]
-- [download 55% complete]
-- [download 57% complete]
-- [download 58% complete]
-- [download 60% complete]
-- [download 61% complete]
-- [download 63% complete]
-- [download 64% complete]
-- [download 66% complete]
-- [download 67% complete]
-- [download 69% complete]
-- [download 70% complete]
-- [download 72% complete]
-- [download 73% complete]
-- [download 75% complete]
-- [download 76% complete]
-- [download 78% complete]
-- [download 79% complete]
-- [download 81% complete]
-- [download 82% complete]
-- [download 84% complete]
-- [download 85% complete]
-- [download 86% complete]
-- [download 88% complete]
-- [download 89% complete]
-- [download 91% complete]
-- [download 92% complete]
-- [download 94% complete]
-- [download 95% complete]
-- [download 97% complete]
-- [download 98% complete]
-- [download 100% complete]
-- verifying file...
       file='/tmp/ws/build_isolated/libphidget22/EP_libphidget22-prefix/src/libphidget22-1.6.20200417.tar.gz'
-- Downloading... done
-- extracting...
     src='/tmp/ws/build_isolated/libphidget22/EP_libphidget22-prefix/src/libphidget22-1.6.20200417.tar.gz'
     dst='/tmp/ws/build_isolated/libphidget22/libphidget22-src'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 37%] Performing patch step for 'EP_libphidget22'
patching file configure
patching file src/class/dataadapter.gen.c
patching file src/class/distancesensor.gen.c
patching file src/device/dataadapterdevice.c
patching file src/device/genericdevice.c
patching file src/phidget.c
[ 50%] No update step for 'EP_libphidget22'
[ 62%] Performing configure step for 'EP_libphidget22'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for ar... ar
checking the archiver (ar) interface... ar
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether make supports nested variables... (cached) yes
checking for gcc option to accept ISO C99... none needed
checking whether byte ordering is bigendian... no
checking for ldconfig... /sbin/ldconfig
checking for library containing dlopen... -ldl
checking for library containing sqrt... -lm
checking for library containing pthread_create... -lpthread
checking for library containing libusb_init... -lusb-1.0
checking for newlocale in xlocale.h... no
checking for newlocale in locale.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libphidget22.pc
config.status: executing depfiles commands
config.status: executing libtool commands
[ 75%] Performing build step for 'EP_libphidget22'
  CC       src/analogsensor.lo
  CC       src/bridge.lo
  CC       src/bridgepackets.gen.lo
  CC       src/class/accelerometer.lo
  CC       src/class/bldcmotor.lo
  CC       src/class/capacitivetouch.lo
  CC       src/class/currentinput.lo
  CC       src/class/currentoutput.lo
  CC       src/class/dataadapter.lo
  CC       src/class/dcmotor.lo
  CC       src/class/dictionary.lo
  CC       src/class/digitalinput.lo
  CC       src/class/digitaloutput.lo
  CC       src/class/distancesensor.lo
  CC       src/class/encoder.lo
  CC       src/class/firmwareupgrade.lo
  CC       src/class/frequencycounter.lo
  CC       src/class/generic.lo
  CC       src/class/gps.lo
  CC       src/class/gyroscope.lo
  CC       src/class/hub.lo
  CC       src/class/humiditysensor.lo
  CC       src/class/ir.lo
  CC       src/class/lcd.lo
  CC       src/class/lightsensor.lo
  CC       src/class/magnetometer.lo
  CC       src/class/meshdongle.lo
  CC       src/class/motorpositioncontroller.lo
  CC       src/class/phsensor.lo
  CC       src/class/powerguard.lo
  CC       src/class/pressuresensor.lo
  CC       src/class/rcservo.lo
  CC       src/class/resistanceinput.lo
  CC       src/class/rfid.lo
  CC       src/class/soundsensor.lo
  CC       src/class/spatial.lo
  CC       src/class/stepper.lo
  CC       src/class/temperaturesensor.lo
  CC       src/class/voltageinput.lo
  CC       src/class/voltageoutput.lo
  CC       src/class/voltageratioinput.lo
  CC       src/constants.lo
  CC       src/datainterval.gen.lo
  CC       src/debug.lo
  CC       src/device/accelerometerdevice.lo
  CC       src/device/advancedservodevice.lo
  CC       src/device/analogdevice.lo
  CC       src/device/bridgedevice.lo
  CC       src/device/dataadapterdevice.lo
  CC       src/device/dictionarydevice.lo
  CC       src/device/encoderdevice.lo
  CC       src/device/firmwareupgradedevice.lo
  CC       src/device/frequencycounterdevice.lo
  CC       src/device/genericdevice.lo
  CC       src/device/gpsdevice.lo
  CC       src/device/hubdevice.lo
  CC       src/device/interfacekitdevice.lo
  CC       src/device/irdevice.lo
  CC       src/device/leddevice.lo
  CC       src/device/meshdongledevice.lo
  CC       src/device/motorcontroldevice.lo
  CC       src/device/phsensordevice.lo
  CC       src/device/rfiddevice.lo
  CC       src/device/servodevice.lo
  CC       src/device/spatialdevice.lo
  CC       src/device/stepperdevice.lo
  CC       src/device/temperaturesensordevice.lo
  CC       src/device/textlcddevice.lo
  CC       src/device/vintdevice.lo
  CC       src/devices.lo
  CC       src/dispatch.lo
  CC       src/enumutil.gen.lo
  CC       src/errorstrings.gen.lo
  CC       src/ext/cvtutf.lo
  CC       src/ext/md5.lo
  CC       src/ext/mos/base64.lo
  CC       src/ext/mos/base.lo
  CC       src/ext/mos/crc32.lo
  CC       src/ext/mos/ctype.lo
  CC       src/ext/mos/endswith.lo
  CC       src/ext/mos/getcwd.lo
  CC       src/ext/mos/getenv.lo
  CC       src/ext/mos/getopt.lo
  CC       src/ext/mos/getpasswd-unix.lo
  CC       src/ext/mos/glob.lo
  CC       src/ext/mos/glock.lo
  CC       src/ext/mos/hexdump.lo
  CC       src/ext/mos/init_daemon.lo
  CC       src/ext/mos/iop.lo
  CC       src/ext/mos/kv/kv.lo
  CC       src/ext/mos/kv/kvent.lo
  CC       src/ext/mos/kv/parse.lo
  CC       src/ext/mos/kv/scan.lo
  CC       src/ext/mos/malloc.lo
  CC       src/ext/mos/malloc-user.lo
  CC       src/ext/mos/md5c.lo
  CC       src/ext/mos/memchr.lo
  CC       src/ext/mos/memcmp.lo
  CC       src/ext/mos/memmem.lo
  CC       src/ext/mos/mkdirp.lo
  CC       src/ext/mos/mos_atomic-pthread.lo
  CC       src/ext/mos/mos_dl-unix.lo
  CC       src/ext/mos/mos_error-errno.lo
  CC       src/ext/mos/mos_fileio-unix-user.lo
  CC       src/ext/mos/mos_lock-pthread.lo
  CC       src/ext/mos/mos_net.lo
  CC       src/ext/mos/mos_netops-unix.lo
  CC       src/ext/mos/mos_os.lo
  CC       src/ext/mos/mos_random-unix.lo
  CC       src/ext/mos/mos_setenv-native.lo
  CC       src/ext/mos/mos_stacktrace-gnu.lo
  CC       src/ext/mos/mos_task-pthread.lo
  CC       src/ext/mos/mos_time-unix.lo
  CC       src/ext/mos/mos_tlock.lo
  CC       src/ext/mos/path.lo
  CC       src/ext/mos/pkcs5_pbkdf2.lo
  CC       src/ext/mos/printf-smart.lo
  CC       src/ext/mos/process-unix.lo
  CC       src/ext/mos/rand48.lo
  CC       src/ext/mos/random.lo
  CC       src/ext/mos/readdir-unix.lo
  CC       src/ext/mos/readline.lo
  CC       src/ext/mos/rwrlock.lo
  CC       src/ext/mos/scanf.lo
  CC       src/ext/mos/sha1.lo
  CC       src/ext/mos/sha2.lo
  CC       src/ext/mos/snprintf.lo
  CC       src/ext/mos/strcasecmp.lo
  CC       src/ext/mos/strchr.lo
  CC       src/ext/mos/strcmp.lo
  CC       src/ext/mos/strdup.lo
  CC       src/ext/mos/strlcat.lo
  CC       src/ext/mos/strlcpy.lo
  CC       src/ext/mos/strlen.lo
  CC       src/ext/mos/strncmp.lo
  CC       src/ext/mos/strncpy.lo
  CC       src/ext/mos/strnsep.lo
  CC       src/ext/mos/strnstr.lo
  CC       src/ext/mos/strrchr.lo
  CC       src/ext/mos/strrev.lo
  CC       src/ext/mos/strstr.lo
  CC       src/ext/mos/strton.lo
  CC       src/ext/mos/strtrim.lo
  CC       src/ext/mos/time.lo
  CC       src/ext/mos/urldecode.lo
  CC       src/ext/mos/urlencode.lo
  CC       src/ext/mos/vasprintf.lo
  CC       src/formatters.lo
  CC       src/gpp.lo
  CC       src/lightning.lo
  CC       src/manager.lo
  CC       src/mesh.lo
  CC       src/network/channel.lo
  CC       src/network/client.lo
  CC       src/network/network.lo
  CC       src/network/networkcontrol.lo
  CC       src/network/server.lo
  CC       src/network/servers.lo
  CC       src/network/zeroconf-avahi.lo
  CC       src/object.lo
  CC       src/phidget.lo
  CC       src/phidget22.lo
  CC       src/plat/linux/usblinux.lo
  CC       src/spi.lo
  CC       src/stats.lo
  CC       src/supportedpacket.gen.lo
  CC       src/usb.lo
  CC       src/util/config.lo
  CC       src/util/jsmn.lo
  CC       src/util/json.lo
  CC       src/util/log.lo
  CC       src/util/packettracker.lo
  CC       src/util/packing.lo
  CC       src/util/utils.lo
  CC       src/vint.lo
  CC       src/vintpackets.lo
  CC       src/virtual.lo
  CCLD     libphidget22.la
Making phidget22.h
[ 87%] No install step for 'EP_libphidget22'
[100%] Completed 'EP_libphidget22'
[100%] Built target EP_libphidget22
==> make install in '/tmp/ws/build_isolated/libphidget22'
[100%] Built target EP_libphidget22
Install the project...
-- Install configuration: ""
-- Installing: /tmp/ws/install_isolated/_setup_util.py
-- Installing: /tmp/ws/install_isolated/env.sh
-- Installing: /tmp/ws/install_isolated/setup.bash
-- Installing: /tmp/ws/install_isolated/local_setup.bash
-- Installing: /tmp/ws/install_isolated/setup.sh
-- Installing: /tmp/ws/install_isolated/local_setup.sh
-- Installing: /tmp/ws/install_isolated/setup.zsh
-- Installing: /tmp/ws/install_isolated/local_setup.zsh
-- Installing: /tmp/ws/install_isolated/.rosinstall
-- Installing: /tmp/ws/install_isolated/lib/pkgconfig/libphidget22.pc
-- Installing: /tmp/ws/install_isolated/share/libphidget22/cmake/libphidget22-extras.cmake
-- Installing: /tmp/ws/install_isolated/share/libphidget22/cmake/libphidget22Config.cmake
-- Installing: /tmp/ws/install_isolated/share/libphidget22/cmake/libphidget22Config-version.cmake
-- Installing: /tmp/ws/install_isolated/share/libphidget22/package.xml
-- Installing: /tmp/ws/install_isolated/include/libphidget22
-- Installing: /tmp/ws/install_isolated/include/libphidget22/phidget22.h
-- Installing: /tmp/ws/install_isolated/lib/libphidget22.so
-- Installing: /tmp/ws/install_isolated/lib/libphidget22.so.0
-- Installing: /tmp/ws/install_isolated/lib/libphidget22.so.0.0.0
<== Finished processing package [1 of 15]: 'libphidget22'

The failure on the build farm occurs during the build_binarydeb phase. It can be reproduced locally using the following steps:

docker run -it ros:noetic-ros-core

# in docker:

echo deb http://repositories.ros.org/ubuntu/building focal main | tee -a /etc/apt/sources.list.d/buildfarm.list
echo deb-src http://repositories.ros.org/ubuntu/building focal main | tee -a /etc/apt/sources.list.d/buildfarm.list
apt update
apt install -y apt-src
apt-src update
apt-src install ros-noetic-libphidget22=1.0.0-1focal
apt-src build ros-noetic-libphidget22=1.0.0-1focal

@jspricke @clalancette Any idea what's going on? Maybe the patch is being applied twice?

@mintar
Copy link
Contributor Author

mintar commented Jun 4, 2020

Thanks to @jspricke I think I know what the problem was. The patch includes some CRLF line endings in dataadapterdevice.c (which is the file where patching fails). These are correctly preserved in this repo. However, I have set core.autocrlf = input in my global .gitconfig on my PC. So when I ran bloom-release here, bloom took my .gitconfig into account when committing stuff to the GBP repo, thereby messing up the line endings (and replacing them all with LF). So bloom caused the patch file in the GBP repo to be different from the patch in the source repo here.

This is also why the prerelease test didn't fail: I ran it on "devel", i.e. this repo, and not on the released version from the messed-up GBP repo.

The solution should be to disable core.autocrlf in the global .gitconfig and do a new bloom release. I'll close this ticket once I can confirm that this fixes the bug.

@mintar
Copy link
Contributor Author

mintar commented Jun 4, 2020

Should be fixed by ros/rosdistro#25324. Let's wait and see.

@mintar mintar closed this as completed Jun 15, 2020
mintar added a commit that referenced this issue Feb 11, 2022
This should avoid problems like #77 and #113 in the future.
mintar added a commit to mintar/phidgets_drivers that referenced this issue Feb 11, 2022
This should avoid problems like ros-drivers#77 and ros-drivers#113 in the future.
mintar added a commit to mintar/phidgets_drivers that referenced this issue Feb 11, 2022
This should avoid problems like ros-drivers#77 and ros-drivers#113 in the future.
mintar added a commit that referenced this issue Feb 12, 2022
This should avoid problems like #77 and #113 in the future.
mintar added a commit that referenced this issue Feb 12, 2022
This should avoid problems like #77 and #113 in the future.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant