Servers by jDrones

Running into problems on test-environment at autotest of ArduCopter- "gpsbabel" and "module cv2"

(I’m developing on Windows 10 with Cygwin)
I’m currently testing a new feature on a library. Test of ArduPlane had no problems, but test of ArduCopter runs (near the end of the test?) in an error, that seems to me to be a problem of the test-environment.
It tells me, that the command “gpsbabel” is not known and the module “cv2” is not existing.
autotest-Fehler.txt (3.2 KB)
I tried to download and compile gpsbabel, but there are problems because Qt>=5.9 is necessary. To install that, I run in further problems (based on python2.7?):
“$ pip2 install qtbase5-dev
DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
ERROR: Could not find a version that satisfies the requirement qtbase5-dev (from versions: none)
ERROR: No matching distribution found for qtbase5-dev”

And the cv2 module I can’t find anywhere.

I think about an installation from scratch. So I looked for an updated instalation-guide for the development-environment, but the script is still using python2.7 !?

So I nearly despair of that problems, because my contributed feature seems to run perfectly, but I’m not able to autotest it.

So what can I do to fix that problems?

Btw: If thats the wrong threat, pls give me a hint where to start that.

most people use wsl on windows 10, Cygwin does not work for everything. Although this should be working I think. Is your mavproxy update?

If its just the autotest you can open a PR, either full or draft, and it will be tested on the ardupilot CI servers.

Thank you pete,

It seems to me that development under Windows with Cygwin is just a makeshift. With the knowledge of today I would have started development of ArduPilot on my Linux-System - maybe I will do that switch after Merging of my currently contributed feature.

And yes, my mavproxy is up to date. There are just “gpsbabel” and “module cv2” missing and I have no idea how to get it. I can imagine that this is necessary for testing the “object-avoidance” on ArduCopter, so it’s not a problem on autotest of ArduPlane.
Do you think it makes sense and it’s ok to ask @rmackay9 directly?

And again yes, to open a PR would be a workaround. But what is a draft-PR?

This is a example of a draft PR, https://github.com/ArduPilot/ardupilot/pull/14039 there is a option when you create it.

Cygwin has not had much love since the use of WSL on windows 10.

Thanks Pete,
that can help me. I will stop to try fixing my issue and do what you suggested.

Hello,

Did you try to pip install gpsbabel ? “pip2 install -U gpsbabel” ?
You shouldn’t need it to run the default tests. What command did you used ?

Hello,
I’m so sure to have tried the installation - but it seems i’ve not :flushed:
In some seconds it was installed…
Now only the python module cv2 is missing…

For the autotest I used:
$ cd /cygdrive/c/users/willy/documents/github/ardupilot/
$ ./Tools/autotest/autotest.py --no-clean --speedup=2 build.ArduCopter fly.ArduCopter

Humm you shouldn’t need gpsbabel for those tests… I will look where the error is… Something is wrong in your install as cv2 should have been installed with the install script as it is a requirement for mavproxy

Ah Ok, so maybe that an other problem in MAVProxy is based on the same issue?
It’s not possible to reload maps. I just helped myself by manually downloading and storing it in C:\cygwin64\home\Willy.tilecache.

And I can find a directory opencv2 and opencv in C:\cygwin64\usr\include, but the module cv2 is not found by python.

It’s solved.

I installed Cygwin and python2.7 from the scratch.
I’m using Win 10 and becaus of that I had the problem, that every call for python in Cygwin leaded via PATH to python 3.5 on Windows or, if it not exists, to a Windows PopUp that asked me, if I would like to install Python 3.5.

The solution has been to put the path of python2.7 (and all necessary modules) IN FRONT OF the cygwin-PATH.

To do so I added the line
PATH=/bin:$PATH
to the file C:\cygwin64\home\Willy\.bashrc
(/bin is the path in Cygwin wherein python2.7 has been installed automatically)

Servers by jDrones