Share your experience porting VMS applications to x86 here.
-
Topic author
issinoho
- Member
- Posts: 8
- Joined: Wed Apr 05, 2023 9:22 am
- Reputation: 0
- Location: Glasgow, Scotland
-
Status:
Offline
Post
by issinoho » Tue Feb 13, 2024 8:14 am
Has anyone successfully ported/compiled the freeware syslogd package available from the VMS Software Freeware pages to x86?
Here's what I get when I try a naive compile...
Code: Select all
@build_syslogd
return;
........^
%CC-W-NORETURNVAL, The function "main" returns a value, but no value is given in
this return statement.
at line number 389 in file DKA100:[TEMP.syslogd.src]logger.c;1
return;
....^
%CC-W-NORETURNVAL, The function "main" returns a value, but no value is given in
this return statement.
at line number 431 in file DKA100:[TEMP.syslogd.src]logger.c;1
%ILINK-F-OPENIN, error opening SYS$COMMON:[SYSLIB]ucx$ipc.olb; as input
-RMS-E-FNF, file not found
%DCL-W-SKPDAT, image data (records not beginning with "$") ignored
-
sms
- Master
- Posts: 380
- Joined: Fri Aug 21, 2020 5:18 pm
- Reputation: 0
-
Status:
Offline
Post
by sms » Tue Feb 13, 2024 9:45 am
Code: Select all
> Has anyone successfully ported/compiled [...]
Not I. (Not even unsuccessfully.)
> [...] the freeware syslogd package available from the VMS Software
> Freeware pages [...]
Thanks for the helpful link.
> [...] to x86?
How old is that code? From those complaints, I'd guess that any
recent VMS version on any hardware would see the same problems. Instant
advice from someone who hasn't looked at the code or the builder(s):
> %CC-W-NORETURNVAL, [...]
Fix the code, or ignore the warning?
> %ILINK-F-OPENIN, [...] ucx$ipc.olb [...]
UCX? How old is that code?
Change the LINK command (or options file) to use:
SYS$LIBRARY:TCPIP$IPC_SHR.EXE /SHAREABLE
instead uf:
SYS$LIBRARY:UCX$IPC.OLB /LIBRARY
which seems not to be distributed these days?
dire sys$library:*ipc*
Look for newer/better syslogd code?
-
imiller
- Master
- Posts: 157
- Joined: Fri Jun 28, 2019 8:45 am
- Reputation: 0
- Location: South Tyneside, UK
-
Status:
Offline
-
Contact:
Post
by imiller » Tue Feb 13, 2024 10:55 am
Ian Miller
[ personal opinion only. usual disclaimers apply. Do not taunt happy fun ball ].
-
Topic author
issinoho
- Member
- Posts: 8
- Joined: Wed Apr 05, 2023 9:22 am
- Reputation: 0
- Location: Glasgow, Scotland
-
Status:
Offline
Post
by issinoho » Tue Feb 13, 2024 12:21 pm
Ok, turns out it was a very easy fix - a few code fixups and changes to the build script combined with these instructions means I now have a fully functioning syslogd daemon running on x86,
https://vmssoftware.com/docs/syslogd-op ... b-2018.pdf
My code is available here,
Code: Select all
git@bitbucket.org:drunkenbaker/syslogd.git
Thanks for the help.
Last edited by
issinoho on Tue Feb 13, 2024 12:55 pm, edited 2 times in total.
-
sms
- Master
- Posts: 380
- Joined: Fri Aug 21, 2020 5:18 pm
- Reputation: 0
-
Status:
Offline
Post
by sms » Wed Feb 14, 2024 12:54 am
Code: Select all
> Not I. (Not even unsuccessfully.)
Hmmm. Less true than I'd thought. I seem to have done things with
this stuff, but it was back around 21-APR-2004, so I probably didn't
consider IA64, let alone x86_64.
Apparently, though, I simplified the builder for "modern"
environments (making it approximately universal?):
ITS $ type BUILD_SYSLOGD.COM
$!
$! Compile and Link syslogd and logger
$!
$! Compile and link.
$!
$ cc logger
$ link logger
$ cc syslogd
$ link /notraceback syslogd
$!
which seems to work around here:
V87 $ @ BUILD_SYSLOGD.COM
V87 $
V87 $ tcpip show version
VSI TCP/IP Services for OpenVMS x86_64 Version V6.0
on a VMware, Inc. VMware20,1 running OpenVMS V9.2-2
If anyone cares, I could post the modified C modules, too: LOGGER.C,
SYSLOGD.C. (The fact that the file names are upper-case suggests that I
still had ODS2 system disks back then.)
I don't remember doing any actual testing, but it compiled and
linked (then and now), so what could go wrong?
-
jonesd
- Valued Contributor
- Posts: 79
- Joined: Mon Aug 09, 2021 7:59 pm
- Reputation: 0
-
Status:
Offline
Post
by jonesd » Wed Feb 14, 2024 10:11 am
I wrote a syslog daemon 20 years ago and found the data sent to it tended to be noisy and bursty. It's easy to end up with a lot of marginally useful data to wade through.
-
arne_v
- Master
- Posts: 385
- Joined: Fri Apr 17, 2020 7:31 pm
- Reputation: 0
- Location: Rhode Island, USA
-
Status:
Offline
-
Contact:
Post
by arne_v » Wed Feb 14, 2024 11:34 am
jonesd wrote: ↑Wed Feb 14, 2024 10:11 am
I wrote a syslog daemon 20 years ago and found the data sent to it tended to be noisy and bursty. It's easy to end up with a lot of marginally useful data to wade through.
I think the days of manual reading such logs are long gone.
You log hundreds of MB or maybe some GB. And then you use tools to search in the data.
ELK, EFK etc..
-
sms
- Master
- Posts: 380
- Joined: Fri Aug 21, 2020 5:18 pm
- Reputation: 0
-
Status:
Offline
Post
by sms » Wed Feb 14, 2024 10:19 pm
Code: Select all
> If anyone cares, I could post [...]
I failed to resist the temptation:
http://antinode.info/dec/sw/syslogd.html
Still no testing (by me) beyond compile+link, but the build worked on
Alpha, IA64, VAX, and x86_64. The new builder creates a subdirectory
for each hardware architecture, instead of using ".EXE_xxx" types.
Complaints are always welcome.
-
jonesd
- Valued Contributor
- Posts: 79
- Joined: Mon Aug 09, 2021 7:59 pm
- Reputation: 0
-
Status:
Offline
Post
by jonesd » Thu Feb 15, 2024 1:13 pm
arne_v wrote: ↑Wed Feb 14, 2024 11:34 am
I think the days of manual reading such logs are long gone.
You log hundreds of MB or maybe some GB. And then you use tools to search in the data.
ELK, EFK etc..
That was kind of my point, getting syslogd running on your VMS box probabily also needs other tools (at the very least something like Perl).