Closed PeterBowman closed 5 years ago
I just gave it a try in https://travis-ci.com/roboticslab-uc3m/color-debug/jobs/161080835.
Switching announcement label to discussion (please restore if deemed convenient): my original intent was to debate whether current Trusty jobs should be switched to Xenial. Or: perhaps both OSs should prevail, in which case we'll end up with twice as many jobs per build (currently 8, reaching up to 10 in develop).
16.04
and 18.04
.Maybe Trusty makes sense for repos such as yarp-devices
and kinematic-dynamics
?
* TEO: Ubuntu 14.04
Actually, it's Ubuntu 16.04 ATOW (https://github.com/roboticslab-uc3m/teo-developer-manual/issues/42#issuecomment-442238739).
Maybe Trusty makes sense for repos such as
yarp-devices
andkinematic-dynamics
?
Not so long ago we had a similar debate about Precise vs Trusty: https://github.com/roboticslab-uc3m/yarp-devices/issues/111. My main concern was expressed in https://github.com/roboticslab-uc3m/yarp-devices/issues/111#issuecomment-351041371 - this is a somehow distro-agnostic train of thought that concerns: 1) the dependencies we expect users to install along with our software; 2) the build environment available in Trusty images. Note that Trusty on Travis provides CMake 3.9.x, well ahead the v3.5 release we assume everybody will use if ever talking about Ubuntu 14.04. Therefore, there is an asymmetry between these two environments that we can't avoid - just adapt to it and keep in mind any potential pitfalls (e.g. the Travis build succeeds but my local machine doesn't).
My 0.05€: follow the updates in Travis & Xenial images, wait until this environment is considered stable enough (should be already), make sure no conflicts arise with regard to our code (shouldn't, everything is well tested and documented on this SO), migrate all Trusty builds to Xenial gradually. Keep in mind Trusty's EOL!
Okay! Updated the info regarding TEO's OSs. Totally agree with your 0.05€ !!! :smile:
I'd consider moving to YARP 3.0 (https://github.com/roboticslab-uc3m/questions-and-answers/issues/65) shortly afterwards. BTW (https://github.com/roboticslab-uc3m/questions-and-answers/issues/65#issuecomment-397658934):
ASWJ, in the future, we'd like to create one tag per repo prior to requiring YARP 3.0 everywhere. The goal is to keep track of the last point in the commit history that supported YARP 2.x.
Edit: also remember to delete old Travis caches, by the way.
Xenial is going to become the default Linux build environment, starting next week: https://blog.travis-ci.com/2019-04-15-xenial-default-build-environment.
My 0.05€: follow the updates in Travis & Xenial images, wait until this environment is considered stable enough (should be already), make sure no conflicts arise with regard to our code (shouldn't, everything is well tested and documented on this SO), migrate all Trusty builds to Xenial gradually. Keep in mind Trusty's EOL!
I'll be working on it, triggered builds may come in handy here.
Issues:
roboticslab-uc3m/vision and roboticslab-uc3m/xgnitive: no PPA available for PCL libraries on Xenial, try libpcl-dev
apt package instead (install guide)
roboticslab-uc3m/vision: cannot find libproj.so
, this is a known Xenial bug; solution: install libproj-dev
package, then remove a reference to vtkproj4
(SO)
asrob-uc3m/yarp-devices: libserial-dev
should depend on libboost-dev
since Xenial, a bug report was sent (ref)
asrob-uc3m/robotDevastation: Can't open /etc/init.d/xvfb
, see 3. Headless browser testing in this blog entry
roboticslab-uc3m/openrave-yarp-plugins (also xgnitive): "The job exceeded the maximum log length, and has been terminated." - add -Wno-deprecated-declarations
compiler flag to reduce verbosity?
roboticslab-uc3m/vision: cannot find
libproj.so
, this is a known Xenial bug; solution: installlibproj-dev
package (SO)
Solved via https://github.com/roboticslab-uc3m/vision/commit/834c33c1f0795dcd536853949a041c84490d29a7, documented at https://github.com/roboticslab-uc3m/installation-guides/commit/e2a084520b8bbfae71a4e53ce0f835f062a53fc6.
roboticslab-uc3m/openrave-yarp-plugins (also xgnitive): "The job exceeded the maximum log length, and has been terminated." - add
-Wno-deprecated-declarations
compiler flag to reduce verbosity?
Added new --cmake-env
option to git-cache-dependency.sh
: https://github.com/roboticslab-uc3m/openrave-yarp-plugins/commit/6ae570b2792c9cf806192643ade1be18386d6a68. All warnings have been disabled (-w
option) for OpenRAVE builds.
Now seeing narrowing issues that escalate to errors on Clang jobs, only (ref):
/home/travis/OpenRAVE-master/plugins/ikfastsolvers/ikfastsolver.cpp:1066:49: error:
non-constant-expression cannot be narrowed from type 'double' to 'float'
in initializer list [-Wc++11-narrowing]
IkReal eetrans[3] = {t.trans.x, t.trans.y, t.trans.z};
^~~~~~~~~
/home/travis/OpenRAVE-master/plugins/ikfastsolvers/ikfastsolver.cpp:1066:49: note:
insert an explicit cast to silence this issue
IkReal eetrans[3] = {t.trans.x, t.trans.y, t.trans.z};
^~~~~~~~~
static_cast<float>( )
I need to double-check locally that the -w
is not causing this with Clang. Might deserve an upstream patch.
asrob-uc3m/yarp-devices:
libserial-dev
should depend onlibboost-dev
since Xenial, a bug report was sent (ref)
Workaround: https://github.com/asrob-uc3m/yarp-devices/commit/6b4a5ffeff673ebec78b90305145f1598d01c013. Remove that dependency and update docs (asrob-uc3m/yarp-devices/doc/yarp-devices-install.md, https://github.com/asrob-uc3m/yarp-devices/commit/a412e453f44a36adb070c67596b74a891f3cd3f5) once this bug is solved.
I need to double-check locally that the
-w
is not causing this with Clang. Might deserve an upstream patch.
Solved in production branch: https://github.com/rdiankov/openrave/commit/23ad7be079086008572513fafd1f5e88da74a279. For now, set CMake option OPT_IKFAST_FLOAT32
to OFF
(defaults to ON
). Traceback:
Affects Clang 6.0 (most recent apt release on Xenial) and Clang 7.0 (current Travis Xenial images). Default Clang Xenial packaged release is 3.8, compiles successfully.
Documented at https://github.com/roboticslab-uc3m/installation-guides/compare/e2a0845...23ee6bd.
Ubuntu Xenial 16.04 build environment is here! (https://changelog.travis-ci.com/ubuntu-xenial-16-04-build-environment-is-here!-79690)
Full docs: https://docs.travis-ci.com/user/reference/xenial: