[Info-vax] This is for the folks who get comp.os.vms via the Info-VAX mailing list
Chris Townley
news at cct-net.co.uk
Tue Dec 12 19:01:17 EST 2023
On 12/12/2023 23:53, Arne Vajhøj wrote:
> On 12/12/2023 8:18 AM, Simon Clubley wrote:
>> On 2023-12-11, Arne Vajhøj <arne at vajhoej.dk> wrote:
>>> On 12/11/2023 9:16 AM, Simon Clubley wrote:
>>>>
>>>> With Cygwin, slrn believes it is running under a form of Unix and,
>>>> having
>>>> had a quick look, it does appear there are prebuilt versions of slrn in
>>>> the Cygwin repository:
>>>>
>>>> https://cygwin.com/packages/summary/slrn.html
>>>>
>>>> I have no idea if there are functionality limitations when running slrn
>>>> under Cygwin, but it might be worth exploring for people interested in
>>>> an option other than Thunderbird.
>>>
>>> Just to be clear about what Cygwin provides.
>>>
>>> Cygwin build tools, compilers, header files, libraries etc.
>>> allow one to build *nix source code. The result is Windows
>>> EXE/DLL that run on any Windows as long as the the Cygwin
>>> runtime DLL is present.
>>>
>>> Nice tool. I have used it for more than 20 years.
>>>
>>> But it is not emulating Linux like WSL1 does (or Wine
>>> does in the reverse direction).
>>
>> Yes. Like I said above, it's emulating the various Unix APIs instead and
>> providing the kinds of tools you would see under Linux. For anyone
>> confused
>> about the difference, look at the output of "uname -o" both under Cygwin
>> and under Linux. Under Cygwin, "Cygwin" is output as the OS, not "Linux".
>
> #include <stdio.h>
>
> #include <sys/utsname.h>
>
> #include <sysinfoapi.h>
> #include <winnt.h>
>
> int main()
> {
> struct utsname un;
> uname(&un);
> printf("sysname=%s, release=%s\n", un.sysname, un.release);
> struct _OSVERSIONINFOA osvi;
> osvi.dwOSVersionInfoSize = sizeof(struct _OSVERSIONINFOA);
> GetVersionExA(&osvi);
> printf("%s major=%d minor=%d build=%d\n", osvi.dwPlatformId ==
> VER_PLATFORM_WIN32_NT ? "NT" : "Unknown", osvi.dwMajorVersion,
> osvi.dwMinorVersion, osvi.dwBuildNumber);
> return 0;
> }
>
> on my PC outputs:
>
> sysname=CYGWIN_NT-10.0-19045, release=3.4.7-1.x86_64
> NT major=10 minor=0 build=19045
>
> It knows what Windows Cygwin is hosted on.
>
>> Think of it as a seriously beefed-up version of POSIX that even allows
>> you to run X under Windows.
>
> I think that is a very accurate description.
>
> It is also very close to how Cygwin itself sees it.
>
> https://www.cygwin.com/faq.html#faq.what.what
>
> <quote>
> What is it?
>
>
> Cygwin is a distribution of popular GNU and other Open Source tools
> running on Microsoft Windows. The core part is the Cygwin library which
> provides the POSIX system calls and environment these programs expect.
>
> The Cygwin distribution contains thousands of packages from the Open
> Source world including most GNU tools, many BSD tools, an X server and a
> full set of X applications. If you're a developer you will find tools,
> headers and libraries allowing to write Windows console or GUI
> applications that make use of significant parts of the POSIX API. Cygwin
> allows easy porting of many Unix programs without the need for extensive
> changes to the source code. This includes configuring and building most
> of the available GNU or BSD software, including the packages included
> with the Cygwin distribution themselves. They can be used from one of
> the provided Unix shells like bash, tcsh or zsh.
> </quote>
>
Don't forget MS also has msys2 that runs in the same way
--
Chris
More information about the Info-vax
mailing list