Subj : Re: Compilers/systems
To : andrew clarke
From : Vitaliy Aksyonov
Date : Tue Feb 07 2023 07:22 am
Hello andrew.
07 Feb 23 15:41, you wrote to me:
VA>> I want to do some code refactoring to remove dangerous coding
VA>> approaches. Like memset() instead of new(), printf(), etc.
VA>> Which compilers are still in use to build GoldED+ and for which
VA>> systems?
ac> If you're taking over development then it's really up to you what you
ac> want to support.
I'd use gcc under linux for main development. Also have working windows dev environment with Visual Studio 2022.
ac> Linux, FreeBSD or MacOS users will have modern versions of GCC and
ac> Clang available.
That make sense. I don't see any issues for modern systems.
ac> Ideally the Windows version should be built with a version of MSVC
ac> that has full STL support. This would exclude now-ancient MSVC
ac> versions like Visual Studio 6.0 from 1998.
ac> From memory the very recent versions of MSVC no longer produce
ac> binaries that will run under Windows XP. I've found a good "middle
ac> ground" is something like Visual Studio 2012, which still runs well
ac> under Windows 10 & 11.
Visual Studio 2012 is not available anymore. Oldest one is 2013. Would it produce binaries for Windows XP?
ac> OTOH it would be preferable if a free compiler could be used in
ac> Windows. Recently I learned that in 2020 Embarcadero released a fork
ac> of Dev-C++ that provides GCC 9.2 and supports C++11:
MS provides free VS community edition. I don't see any reasons why can't it be used.
ac>
https://github.com/Embarcadero/Dev-Cpp/releases
ac> OS/2 I'm not really sure about, but I know there are modern versions
ac> of GCC available from the Netlabs repos.
ac> I was going to suggest DOS/DPMI support should be dropped, but I see
ac> GCC 10.2.0 was ported to DJGPP in 2020, so that's probably useable.
ac> Though I doubt many people would complain if DOS support was removed
ac> from future GoldED versions.
That's a good question. Main concern here is that FidoNet is mostly retro hobby and people may want to run it on old computers and old OSes.
ac> Another option for Windows, OS/2 & DOS may be to build with a recent
ac> version of OpenWatcom 2.0, though I don't know how well it supports
ac> STL or C++11. It may be good enough. The great thing about OpenWatcom
ac> 2.0 is can run under Linux, and it's also a cross-compiler, so you can
ac> build DOS, Windows & OS/2 apps from Linux.
I like the idea of using cross-compiling. In this case there is no need to setup many different systems. Even if they work on virtual machine.
From what I've read about OpenWatcom - they don't really conform fully to even C++98 and I'm not sure about C++11 support either. Need to try that.
Even refactor code to use C++98 would be a huge improvement. It's full of old pure C approaches.
Vitaliy
... Mo? ?a?a ?o?opu?a: ?e ??a?o??c? c ?e??a?o???u ?????u.
--- GoldED+/LNX 1.1.5-b20220504
* Origin: Aurora, Colorado (1:104/117)