3

I’m hoping to port an application to open vms using HP C++7.3, but at the minute just trying out a few examples to establish if it's a potential way forward but a bit stuck. Being completely new to open vms it's being a lot of fun so far.

For starters I've not got very far building boost as a whole, after some googling I found a few mentions of people having dcl scripts to build boost but no actual scripts. I don’t suppose anyone has any or can pint me to some. I ‘only’ need asio and threading.

Currently I’m just trying to compile the asio chat examples. And as I said I’m completely new to VMS and the compiler, I managed to get a few things to compile but now get a “could not open source file "sys/select.h"’, a bit of googling suggests I may need to have an HP porting library installed or maybe I’m just missing an prepocessor directive to include the correct code, can’t see anything obvious in socket_types.hpp to set?

Any pointers in the right general direction would be gratefully appreciated.

vickirk
  • 3,979
  • 2
  • 22
  • 37
  • You get my pity upvote. I suspect you will have to contact people who mention being able to do these things directly and ask them for assistance. Or contact your compiler vendor for support. – MK. Apr 04 '12 at 14:09
  • @MK I think so too. Unfortunately I need to understand the risk involved pretty soon and doesn't look like I'm going to get a reply soon, thought I'd try my luck here. Otherwise I'll have to assume a worst case scenario of starting from scratch :-( – vickirk Apr 04 '12 at 14:36
  • 2
    I've dealt a little bit with building modern apps on OpenVMS, but C, not C++. It is doable, but non-trivial and having support contract with a compiler vendor is essential in my opinion. – MK. Apr 04 '12 at 14:39

2 Answers2

0

No answers since the questio is too open ended and in a realm I know little about. Just some thoughts.

Select can be provided by the OpenVMS TCPIP services (aka UCX), or other TCP stack. At the dcl prompt try: $ HELP TCPIP_Services Programming_Interfaces Socket_API

Async programming on OpenVMS is typically 'event driven'. Google for SYS$QIO and AST

There is a public access OpenVMS system which holds 'NOTES FILES' (pre-cursor to web-forums) Try TELNET to EISNER.DECUS.ORG and you'll get sign up instructions. Once you are in find your way to the PORTING_TO_VMS conference Once in the NOTES conference you can issue the command DIRECTORY or DIR/TIT=xxx Unfortunately there is not topic for select, but you can find some interesting reading using NOTES> SEARCH "select(" followed by repeated SEARCH commands) ( $ NOTES ... OPEN PORT ... SEARCH "select(" ... SEARCH [] ... SEARCH ... )

The PERL folks did an admirable job getting open stuff to work on OpenVMS.

Good luck!

Hein
  • 1,453
  • 8
  • 8
0

boost library on OpenVMS can be used directly from headers. I remember one thing to make sure was that BOOST logical is defined concealed, so the relative-includes work.

vmsnomad
  • 319
  • 2
  • 7