Author Topic: What PSoCs, MCUs/MCPUs , FPGAs and IoT boards are Linux friendly?  (Read 14340 times)

0 Members and 1 Guest are viewing this topic.

Offline cdevTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 7350
  • Country: 00
Re: What PSoCs, MCUs/MCPUs , FPGAs and IoT boards are Linux friendly?
« Reply #50 on: June 24, 2017, 08:22:24 pm »
Is there any chance that the manufacturers could write their IDEs in Java so it could be portable from one hardware platform to another?

You would think they would want to, with the popularity of Chromebooks, etc, in the educational arena.
"What the large print giveth, the small print taketh away."
 

Offline technix

  • Super Contributor
  • ***
  • Posts: 3507
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: What PSoCs, MCUs/MCPUs , FPGAs and IoT boards are Linux friendly?
« Reply #51 on: June 25, 2017, 03:53:20 am »
You don't even have to "write much" if you're wanting to make a high quality IDE.

Eclipse is based on JAVA and is open source and cross platform and has not only a "good" IDE but also tons of vertically integratable IDE / toolchain / development components.  Code editors.  Highlighting.  Reformatting.  Refactoring.   Auto completion.  Build tool integration.  Build configuration / management.  Model driven design tools.  Documentation tools.  SCM integration tools.  Reporting tools.  UML.  Diagramming.  etc. etc.  You could probably write a ton of NON programming related apps in the Eclipse framework and still get a lot of benefit from their vast UI and system tool arena.

Similar for NetBeans. (JAVA)

Then there's the CLR/NET framework which is sort of semi open source / portable and there are some integrable IDEs / source code editors written for it that could be extended.

Then there are things like (don't laugh) Emacs which is highly portable and has good code editing and build integration stuff etc.

Then you have the open toolchain stuff, GCC, LLVM/CLANG, LIBC, various small LIBC versions, GDB, etc.

Then you have the whole "web frameworks" where you can generate your tool as a MVC type approach and have your back end logic be portable and your presentation stuff handled entirely or mostly by active (or not) web based controls that just need one of the major browser engines to handle UI chrome / presentation / layout / rendering / DOM stuff.  Done.  You don't HAVE to use these to make cloud based solutions.  There's nothing stopping you from running the same code locally as an application environment.  So you design it once and have a cloud version AND a local portable installable version.

Then you've got nice portable frameworks like QT that can be used to make UIs that run on anything from a smartphone to a desktop.

I wonder how the MS Windows KDE version is doing these days?  Anyway...

I'm almost at a loss as to how / why in this day and age anyone writes anything that ISN'T cross platform portable with only very modest effort these days.  And even on a single platform you've got to be mindful of locales, different screen resolutions / sizes, different input devices / methods, etc. so your "extra effort" to handle a tablet vs. a netbook vs. a laptop vs. a desktop vs a browser is pretty small if you're doing it right.

Heck 90% of the time I don't necessarily want my IDE to dictate my code editor / browser choice anyway so they could save the effort and just make it plug in / interact nicely with whatever you run -- emacs / Visual Studio / sublime / vim / whatever and there you go, one less problem for developers and users.

And of course there's NO excuse for the *compilers* and other code generation / toolchain stuff not to be 100% standards compliant portable code so THAT shouldn't matter.

Debugging interface is a bit less ideally portable but if you support JLINK's libraries that are cross platform that'll handle a lot of cases.  Similar OpenOCD and a couple other ones.  And ethernet proxy based of course.  Basically not a problem if you do it right.

Is there any chance that the manufacturers could write their IDEs in Java so it could be portable from one hardware platform to another?

You would think they would want to, with the popularity of Chromebooks, etc, in the educational arena.

From the proprietary point of view, assuming the company absolutely does not want to fess up a single line of the code to the community, it is still possible to create a portable IDE or toolchain using cross platform open source projects:

* LLVM/clang is licensed under MIT license. A company can add code into this and release the resulting code under a proprietary license without source code. LLVM/clang have built-in assembler and linker so there is no need to find an alternative to those components.
* Eclipse allows proprietary plugins to be included without extending EPL to it, so a company can use Eclipse-based IDE for their chips.
* There are multiple libc implementations licensed under MIT, BSD or ISC licneses. The company can choose one and modify it as needed to build theirown C standard library.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf