Need to use 4.09 plane firmware in SITL

Confirmed same build error on master.

@amilcarlucas Might have an issue with the fettec code. Interesting that CI didn’t catch it.

Which gcc compiler version? I can not reproduce it.

The two lines above that one like just like the line causing the error.
Strange that it only happens on that longer line.

I have gcc 7.4.0 in Cygwin. That should be the version that gets installed for all the Cygwin environments.

I think I have it fixed on https://github.com/ArduPilot/ardupilot/pull/18374

Can you test that?

1 Like

Compiled and tested. Thanks!

Dear TunaLobster & amilcarlucas,

A big thank you for the quick actions regarding sorting out the compilation problem!

I have managed to successfully compile the current master in github. That is just a check to get familiar with compiling with cygwin and also making sure that I can run SITL with the resulting build. However, I face another problem. Since, after compilation ardupilot.exe appears in the bin folder, I attempted to run SITL (Simulink, MissionPlanner,ardupilot.exe), but unfortunately the following error pops up. The cygwin1.dll and cygstdc+±6.dll files are needed and obtained from the firmware site, but nowhere I can find the cyggcc_s-seh-1.dll file from the image below.

Once I compile the 4.0.9 build, should I expect the same issue?

arduplane_run_error

ADDED LATER:
Today, I also attempted to build the 4.0.9 version of ArduPlane.
The below lines is the exact sequence of all that I enter in Cygwin.
Unfortunately, the following error appears.
It is very likely that I am doing something in the wrong way…so please any guesses about what exactly is happening?

git clone --branch ArduPlane-4.0.9 --single-branch GitHub - ArduPilot/ardupilot: ArduPlane, ArduCopter, ArduRover, ArduSub source
cd ardupilot
git submodule update --init --recursive
./waf --board sitl configure
./waf plane

With the first line I attempt to download this tag.

Thank you for the attention and help in advance!

All the best!

Do a waf clean and try again. If that doesn’t work try a distclean. Details on using waf with ArduPilot are in BUILD.md. https://github.com/ArduPilot/ardupilot/blob/master/BUILD.md

For the second error, you need to run ArduPlane with some command line options. ArduPlane.exe --help Mission Planner uses the command ArduPlane.exe --model plane --uartA tcp:0 by default. See https://github.com/ArduPilot/MissionPlanner/blob/78a177aba130192fab21baa0e831e42f6043a407/GCSViews/SITL.cs#L520

TunaLobster, hello and thank you for the quick reply!

  1. Considering the 1-st error about the missing .DLL file:
    I tried to run the executable by typing in terminal arduplane.exe or arduplane.exe --help, it simply keeps asking for this .DLL file. Normally, to run SITL with the executable that Mission Planner downloads, I type ArduPlane.exe --model JSON, since this is the format/protocol which the Simulink model that I have uses. This attempt also fails…
    I attach the executable here in case you have time/wish to check it for yourself. Again, this is the executable that I obtain from cloning and compiling the git master folder from.

If it could be of any usage, the below image gives the summary after the master compilation ends:

  1. About the 2-nd error related to the cloning of the ArduPlane-4.0.9 tag (also tried cloning ArduPlane-stable tag)
    I tried ./waf clean or ./waf distclean again and again, but the same error jumps in every time and the compilation gets terminated.

If you have any further guesses I would be grateful to share them!

Thank you once again!

All the best!

I was able to build after adding the toolchain option to waf to get a working exe. That should not be required, but something might have changed.

./waf configure --board sitl --toolchain i686-pc-cygwin

2 Likes

TunaLobster,

I cannot say how much I am grateful for your help!!!

  1. Master build performed and executable runs absolutely great! Can perform SITL now with it. No prompt asking for cyggcc_s-seh-1.dll, anymore.

  2. The previous compilation error with the 4.0.9 build is gone now, so all is good too! However, one issue appears when I attempt to run SITL. No JSON model is found. Please see attached image.

Note: This issue does not happen with the executable from the master build, after compilation. Image of this:

I suppose that the issue is not related to Cygwin packages/librarries?

It seems that I am very close to my ultimate goal now.

Once again thank you and all the best!

@TunaLobster, Hello

If available, could you please have a look at my latest post here.

Thank you very much in advance!

All the best!

I’ve been testing master so much I forgot that the JSON interface was added in 4.1. Should be able to backport that feature though.

1 Like

Hello, TunaLobster,

Thank you, good to know this. Do you have any suggestions if and how I can do the backport?

Thank you a lot!

All the best!

Thanks Shef, but I only followed the guidelines that TunaLobster was so kind to provide. I hope this post is helpful to other people in the long term.

@TunaLobster, do you have any suggestions if and how I can do the backport that you last mentioned? It is about JSON interface being added to 4.0.9 build.

Many thanks in advance and all the best!

Here is one more solution to this missing DLL on windows: Simulation in Mission Planner Complaining About Missing DLL