Web lists-archives.com

Re: Is our use of Cygwin to build & run OpenOCD a good one?





On 5/21/19 1:55 PM, LRN wrote:
On 20.05.2019 21:49, Bob Cochran wrote:
On 5/20/19 10:27 AM, Jose Isaias Cabrera wrote:
Erik Soderquist, on Monday, May 20, 2019 10:16 AM, wrote...
On Sun, May 19, 2019 at 3:44 PM Bob Cochran wrote:
<snip>
"Cygwin? this is probably still functional, but now can be considered a
(pre)historic solution."
The words of the ignorant, in my opinion.  Cygwin has done an
excellent job of maintaining currency and usefulness.
Indeed.  I have been using cygwin since 1996-7.  Can't remember the exact year, but it has been God-sent, and it has been in every Windows machine I have had control.  Just my 0.02. Thanks.

Thank you to everyone who has replied to my question whether this was a
good use case for Cygwin!  It was great to read all of the replies and
see that I'm in sync with this project & its users / developers.

I've read the actual thread on OpenOCD ML, and i've looked at the links posted
there. I probably should have subscribed to OpenOCD ML, but i'm too lazy to do
so and will write here instead.


Thank you LRN for the excellent write up(s).   I'm going to summarize this and add it to our web article as alternatives to our approach.

Please also consider that Cygwin worked without a hassle and is on all of our PCs.   Time is tight and maybe I can be build a native Windows OpenOCD exe that works with our hardware, but maybe I can't without burning a lot of time. At this point, we're good to go with Cygwin.  Also, I want students that we're working with to install Cygwin on their PCs.   I never bothered to learn complicated Power shell syntax & commands because I never needed to - just opened a Cygwin terminal instead.

And I'm reluctant to install other translation projects on my PC like MSYS2 and MinGW because of bloat, support, and security concerns.   Try to keep it as simple as possible!

But anyway, the main point of my email is to thank you for taking the time to write this up.

Bob



Basically, the thread had three participants:

*kristof mulier: wanted to get OpenOCD binaries for Windows, tried MSYS2, but
didn't get satisfactory results; posted a link to a guide for building OpenOCD
with MSYS2, written by some 3rd party
*you: posted a link to a guild for building OpenOCD with Cygwin
*Liviu Ionescu: pointed out that you should be using mingw-w64, said that
Cygwin is prehistoric

Liviu Ionescu seems to be a Microsoft fanboy, since he advocated for the use of
WSL (i already said earlier what i think of WSL). However, he wasn't wrong when
he said that you should use MinGW. If a piece of software can be built with
MinGW, then you generally should do so, unless there are specific reasons to
avoid that (compatibility, subtle porting bugs, etc). It seems to be the case
for OpenOCD.

kristof mulier seems to have weak developer-fu, and got a bit confused. The
MSYS2 guide that he used pointed to a MSYS2 package git repo, and kristof
assumed that the repo in question contained OpenOCD source code (which is
supposedly why he was getting an old version of OpenOCD compiled all the time).
That is not the case[0]. MSYS2 package repo contains small buildscripts for the
appropriate packages. The reason he was getting an old version is that the
version (git revision, in case of OpenOCD-git) is hardcoded into PKGBUILD file
(which he didn't edit, uncritically following the guide; the author of the
guide didn't concern himself with getting OpenOCD from lastest git master HEAD,
and thus didn't mention that detail).

Therefore i still sand on my advice: either cross-compile from Cygwin, or try
MSYS2 (the irony here is that your Cygwin guide describes *almost exactly* how
one can build OpenOCD from MSYS2).

[0]: at least, i assume so; i don't really use MSYS2 repos or its package
manager, therefore i could be mistaken



--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple