TIP: Click on subject to list as thread! ANSI
echo: golded
to: andrew clarke
from: Vitaliy Aksyonov
date: 2023-02-07 07:22:00
subject: Re: Compilers/systems

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)

SOURCE: echomail via QWK@pharcyde.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.