Subj : Compile from source
To   : Yigael
From : Digital Man
Date : Fri Apr 05 2024 02:41 pm

 Re: Compile from source
 By: Yigael to Digital Man on Fri Apr 05 2024 02:11 pm

> Is there a guide showing the easiest way to compile the Synchronet source
> files with a Windows app?

The required tools are listed here:
https://wiki.synchro.net/dev:tools#windows

> Being new to Synchronet v3.20, and having only
> dabbled in programming up until now, I'm sure this must seem like a dumb
> question.
>
> What I've tried so far:  cloned the GitHub mirror for SBBS, installed MS
> Visual Basic, spent hours trying to figure out how to compile without
> errors.

Visual Basic isn't used or involved in the building of Synchronet at all. Microsoft Visual C++ (which is a component of Visual Studio) is, however.

> As I prefer to research answers before asking, I checked the Synchro
> Wiki but only mentions the Windows files "built using Microsoft Visual
> Studio Express 2019 for Windows Desktop" (which doesn't appear on the web so
> it must have
> been renamed).  One of the Synchronet .bat files in the source says that
> building "requires Microsoft Visual C++ 2022".

The majority of Synchronet for Windows can be built today with either Visual C++ 2019 or 2022. Newer is better however.

> So I installed the latest
> VB, but even after adding nearly every module available module, I'm getting
> way
> too many errors for me to believe this is the right path.

"VB" is a different language/tool-set.

> So now I'm asking for help.
>
> 1. What are the easiest steps to compile Synchronet source files, without
> errors, and get a release that is ready for installation on a Windows PC?

Install Visual C++ 2022, open src/sbbs3/sbbs3.sln in it and then "build solution". This will build all the Synchronet DLLs and utility EXEs and the console-mode sbbs.exe, but not the GUI components: sbbsctrl.exe, useredit.exe, chat.exe. Those are built using Borland C++Builder 6 (still, yes I know, a very old/proprietary/commercial tool).

> 2. Can this task be accomplished using Git for Windows, or a compiler that
> isn't a disk-space-gobbling Microsoft product?

No. Visual C++ (a Microsoft product) is required, at minimum. To rebuild everything I release for Windows, you'll also need C++Builder 6.

> 3. If VB is the only way, then what are the minimum modules required, and
> what steps needed, for making a Synchronet "release version" properly.

All the required "modules" are in the Git repo. Since these tools and concepts seem so foreign to you, I'm curious *why* you want to build Synchronet for Windows from source? If you're new to Synchronet and new to programming, this doesn't sound like a great way path to success. Maybe start with a simpler project?

> I see on the gitlab that there are nightly dev builds, so this must be an
> everyday task for developers.  I just need some information that'll help get
> me situated in the correct direction.  Thank you in advance.

The nightly dev builds are built automatically (not manually by a developer). That said, yes, I build Synchronet for Windows daily, manually, as well.
--
                                           digital man (rob)

Sling Blade quote #11:
Doyle Hargraves (to Karl): What in the hell you doin' with that hammer?
Norco, CA WX: 55.2�F, 56.0% humidity, 3 mph SSW wind, 0.12 inches rain/24hrs

---
� Synchronet � Vertrauen � Home of Synchronet � [vert/cvs/bbs].synchro.net