[BRLTTY] Compiling BRLTTY for Android on Windows

Dave Mielke dave at mielke.cc
Thu Mar 8 10:50:59 EST 2018


[quoted lines by Robert Pösel on 2018/03/08 at 14:16 +0100]

There are several issues:

Simply changing brltty to build with cmake would be a bad idea because that's a 
Windows-specific tool. We need to build brltty on others platforms, not the 
laast of which is Linux., and I don't really want to have more than one way to 
do it.

The only way I'd consider accommodating cmake is if we could convince autoconf 
to get it right. Maybe that'll actually happen at some point, but it's not in 
my immediate plans because brltty builds just fine for Windows using MinGW. 
There are enough other things to do without taking on a non-trivial task that 
provides very little, if even any, gain but adds a lot of needless complexity.

One reason you had difficulty building brltty is because you included brltty.c, 
which means that you tried to make an executable. That, of course, makes no 
sense on Android. If cfg-android has successfully run then all you need to do 
for the core part is to make the two needed shared objects: libbrltty_core.so, 
and libbrltty_jni.so.

We build with ant because it works. I don't personally see any need to convert 
to using gradle because we build brltty with older tools since it runs all the 
way back to ICS (4.0). Again, it becomes an issue of is it worth converting for 
no real gain.

I'm sure there are plenty of problems building brltty on Windows for any other 
purpose than using our mkwin script to build brltty for Windows. The simple 
reason for this is that we develop on Linux, and that that (at least to the 
"ignorant", lile me) seems to be so much easier. Yes, we do build for Windows 
on Windows, but that's only after spending a lot of time and effort developing 
the mkwin script to make sure that it remembers all of the steps and gets it 
all right.

The android command is part of the Android SDK. The directory it's in needs to 
be in your command search path. Of course, chances are that the android command 
on your Windows system is for Windows and doesn't do the right stuff within a 
Linux directory structure. Another possibility, of course, is that the android 
command only makes sense with an ant-based build so maybe that's another 
possible reason that you don't have it.

I'm not sure if I've covered all the issues, but I'm sure you're getting a 
feeling for my position on all of this. Yes, I'm being stubborn and maybe even 
unreasonable. My question is: Rather than introduce a bunch of needless and 
unwanted turbulence into our way of building, why not just install a Linux VM 
on Windows and do it our way? While I won't speak for others, I will speak for 
myself. I'd much rather invest my time and effort into solving real problems, 
and also would rather devote a chunk of it to my personal life (family, etc). 
I'd also prefer not to risk destabilizing our very robust way of doing things 
just because, for a possibly legitimate philosophical concept, it may make 
sense..

-- 
I believe the Bible to be the very Word of God: http://Mielke.cc/bible/
Dave Mielke           | 2213 Fox Crescent | WebHome: http://Mielke.cc/
EMail: Dave at Mielke.cc | Ottawa, Ontario   | Twitter: @Dave_Mielke
Phone: 1-613-726-0014 | Canada  K2A 1H7   |


More information about the BRLTTY mailing list