CedarvilleCS / CedarLogic

CedarLogic: Free, Open Source Digital Logic Simulator
GNU General Public License v3.0
31 stars 19 forks source link

Porting CedarLogic to QT / MacOS #38

Open JStevens209 opened 3 years ago

JStevens209 commented 3 years ago

Problem Many Cedarville students come to University with MacOS computers. With CedarLogic only supported on Windows due to wxWidgets, I would like to propose creating compatibility through the wxWidgets QT port.

Solution I would like permission to take on this endeavor on my own. I could use the experience, and I am familiar with QT/C++ programming. I can give my resume if needed.

Alternatives One alternative is to use the provided wxWidgets MacOS port. I do not know which will be the path of least resistance currently. Neither port is a complete 1:1 port, as both have different features missing.

Additional context CedarLogic not being supported by MacOS is an issue for the following reasons.

  1. Bootcamp support is (most likely) being dropped with the new M1 Macbooks (no more running Windows natively on Macbooks)
  2. Cedarville already has very poor support for Macbooks in general (ex. wxWidgets is used as the first GUI programming project). I hope to start rectifying this.
  3. It will save many incoming freshman students, many hours of work in trying to get CedarLogic working on their own computers.
JoeHCQ1 commented 2 years ago

Hi @JStevens209 ,

Yes! You may feel free to attempt a MacOS port, no need for permission. That's the beauty of open source, you could make your own copy of CedarLogic and as long as you followed the GPL3 stipulations, you'd be golden.

That said, we just got a PR merged in that makes this work on Linux: https://github.com/CedarvilleCS/CedarLogic/pull/56. The docs may need a little updating, but this should be pretty close to working on Mac too given that change.

Yes, many groups still don't support mac very well. I still see companies fairly often that only support Windows. I also have seen somewhere there isn't even a Windows machine in the shop. Getting this to work on Mac, Linux and Windows is definitely important. I'm going to use the graphical WSL2 GUI integration to test an Ubuntu-based build from my Windows computer and update the docs.

JoeHCQ1 commented 2 years ago

Oh, and as far as your resume, haha, no worries there. Good code is good code, as is bad code. YOE (years of experience) has been shown to not correlate with ability. A conclusion that surprises no one in the industry. I can find the paper if you want.