Author Topic: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0  (Read 11369 times)

Robert Roland

  • Newbie
  • *
  • Posts: 7
  • Karma: +1/-0
    • View Profile
Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« on: September 06, 2023, 06:27:10 am »
I'm having trouble getting VisualAge C++ 3.0 installed properly on ArcaOS 5.1.0 -

I have a clean Arca install, and I finished phase 1 of the VA install, and on reboot I'm stuck at a blue screen with a wait cursor. PMShell never loads. Window List is empty, and I can't seem to get to PMShell or anything.

The config.sys changes look innocuous - so I'm not sure where to go from here.

Has anyone seen this yet?

edit: after a few minutes, I hit "Shift" and got the ArcaOS Desktop Panic screen, telling it to skip startup, and skip desktop archiving didn't help.
« Last Edit: September 06, 2023, 06:30:34 am by robdaemon »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4831
  • Karma: +101/-1
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #1 on: September 06, 2023, 07:00:58 am »
It's been a while. Make sure the references to VAC are at the end of LIBPATH and PATH and same with SOMIR and SOMBASE. You really need to apply the fixes to bring it up to 3.08 as well. Might be forgetting something and IIRC, the LIBPATH is the most important as VAC downgrades things WPS related.
Personally, I just used a cmd file to set up the environment, ran in a cmd window, attached.

Robert Roland

  • Newbie
  • *
  • Posts: 7
  • Karma: +1/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #2 on: September 06, 2023, 07:22:56 am »
Okay awesome, thank you, after moving IBMCPP to the end of my LIBPATH and SOM.IR paths, I get a desktop!

Now to figure out why XCenter disappeared :)

Lars

  • Hero Member
  • *****
  • Posts: 1298
  • Karma: +65/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #3 on: September 06, 2023, 01:36:13 pm »
1) it is very advisable to not install the toolkit that comes with VAC but to install the latest toolkit that can be installed from various places: YUM/RPM, from eCS media, from AN media (?)
2) that said, you should remove anything VAC related from libpath that has to do with the toolkit that comes with VAC. You do however need to keep those parts that point to DLLs that VAC needs to operate. And these parts have to go to the end
3) make sure that for INCLUDE env var, all VAC paths go to the end
4) make sure that for the LIB env var, all VAC paths go to the end
5) you should not put anything on SOMIR that relates to any VAC path, see 1) as it relates to it
6) you should make SOMBASE point to the latest toolkit installation, see 1) as it relates to it


Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4792
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #4 on: September 06, 2023, 02:25:10 pm »
Hello

Sorry to add different question.

I always have the idea that comparing between "IBM VisualAge C++ 3.0 (1995)" and "IBM C and C++ Compilers, Version 3.6.5", it is better to get "IBM C and C++ Compilers, Version 3.6.5" because it is the same compiler but newer/updated. Am I right on this?  Is there any specific feature that the "IBM C and C++ Compilers" is missing compared to "IBM VisualAge C++ 3.0"?

Sorry again to use this thread for my question, I never installed "IBM VisualAge C++ 3.0".

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Neil Waldhauer

  • Hero Member
  • *****
  • Posts: 1044
  • Karma: +25/-0
    • View Profile
    • Blonde Guy
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #5 on: September 06, 2023, 03:17:51 pm »
I have had a reliable VAC 3.0 installation procedure as a part of Suntan Special. It works great on ArcaOS 5.1. It follows all of Lars' recommendations. I use the unattended installation with a response file.

When Innotek first released GCC for OS/2, I compared the C++ of all the available compilers. Early GCC could compile all the examples in "Advanced C++". No other OS/2 compiler could do that. VAC 3.6.5 was not significantly better than VAC 3.0.
Expert consulting for ArcaOS, OS/2 and eComStation
http://www.blondeguy.com

Lars

  • Hero Member
  • *****
  • Posts: 1298
  • Karma: +65/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #6 on: September 06, 2023, 07:34:08 pm »
Hello

Sorry to add different question.

I always have the idea that comparing between "IBM VisualAge C++ 3.0 (1995)" and "IBM C and C++ Compilers, Version 3.6.5", it is better to get "IBM C and C++ Compilers, Version 3.6.5" because it is the same compiler but newer/updated. Am I right on this?  Is there any specific feature that the "IBM C and C++ Compilers" is missing compared to "IBM VisualAge C++ 3.0"?

Sorry again to use this thread for my question, I never installed "IBM VisualAge C++ 3.0".

Regards

I currently do not have VAC 3.6.5 installed but only VAC 3.0 (with all that bunch of fixes that are floating around here and there and everywhere).
I seem to remember that the VAC 3.6.5 package is lacking a source code debugger (I would have to install it to check). That is about the only reason why you would use VAC 3.0 instead of 3.6.5. The VAC 3.0 debugger on the other hand can debug exes produced with VAC 3.6.5 just fine, so you could install both ...

VAC 3.6.5 is not just newer: VAC 3.6.5 supports 64-bit arithmetic whereas VAC 3.0 only supports 32-bit arithmetic. And the Watcom 32-bit compiler also supports 64-bit arithmetic, so VAC 3.0 is kind of outdated.
« Last Edit: September 06, 2023, 07:36:59 pm by Lars »

Andi B.

  • Hero Member
  • *****
  • Posts: 826
  • Karma: +11/-2
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #7 on: September 06, 2023, 08:53:38 pm »
Quote
I seem to remember that the VAC 3.6.5 package is lacking a source code debugger
My 3.6.5 does have idebug included. It identifies itself as beeing Version 3.6.5 Fixpak 2.

I'm not sure if 3.0.8 includes the multithreaded libraries. Back then I need to compile XWP and my widget with 3.6.5 instead 3.0.8 to get a multi-threaded widget working.

See here - http://buchinger.bplaced.net/Download/priv/getstrt/concepts/cgchnges.htm
(Tried to attach the full change list. But html is not allowed. So renamed to txt.)
« Last Edit: September 06, 2023, 09:29:51 pm by Andi B. »

Alex Taylor

  • Sr. Member
  • ****
  • Posts: 389
  • Karma: +5/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #8 on: September 07, 2023, 12:45:20 am »
As a compiler, 3.65 is generally to be preferred over 3.0. Not only is it a newer iteration of ICC (and has more recent fixes), it supports more recent language features like (like 64-bit integers, as noted).

I suppose you might prefer to use VAC3.0 would be if you need some component that 3.65 lacks or does poorly (ISTR hearing that SOM/WPS programming is better supported in 3.0).  Also, 3.65 doesn't include the IDE from 3.0.

That said, one big point in 3.0's favour is its INF formatted compiler documentation.  3.65 uses the NetQuestion HTML documentation system, which is bloated, intrusive, and in general a pain to use.

FTR, I have both installed but I generally use 3.65 unless a project specifically requires 3.0.

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #9 on: September 07, 2023, 06:27:28 am »
vac++ V 3.0x does have both multithread and single thread versions of IBM's libraries.  Plus
there is an "update" out there that adds multi-thread capability and ODBC support to Visual Builder applications for version 3.0x.

For me the library and the tools that are bundled with a compiler are usually more important than specific attributes of the compiler like compile time and executable size, etc.   And the quality of the error messages that tell me what stupid thing I have done in my code.

Versions 3.0x/3.5, 3.65 and 4 all include extensive libraries for C++, including a very powerful library for building user interfaces. Versions 3.0x/3.5 use version 3 of the IBM open class library (IOC),  Versions 3.65/4 compilers are bundled with IOC version 4. Parts of the IOC were rewritten between versions 3 and 4.  The v 3 of the IOC seems more optimized (for performance) on OS/2 than v 4- at least the user interface parts of the library.

Version 4 of the compiler bundles a version the C++ standard stl - earlier versions do not.

I like using the visual builder tool in 3.0x better - it is easier to get to the "parts" that you are building than going through the IDE in version 4. I also like the user interface in the v 3.0x Visual Builder better - notebooks for setting values instead of the Delphi like properties list that is used in version 4.  On the other hand if you are not programming with the Visual Builder  the version 4 IDE is very nice.  It is nice to have all the functions in the project listed in a window and be able to jump directly to that function while coding.  And you  can write pure C code in version 4 - just change the file extensions  from .C to .cpp and don't write/use any C++ features and you get almost all the advantages of the IDE.

In my experience the programming editor (LxPM) bundled with version 3.0x does not work on AOS (and may not work with eCS).  However you can substitute EPM in the WorkFrame (the "ide" for version 3.0x) settings and that does work.  The version of LxPM that is bundled with version 4 does work with AOS.  While LxPM is integrated into the version 4 IDE you can execute LxPM as a standalone editor.



Robert Roland

  • Newbie
  • *
  • Posts: 7
  • Karma: +1/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #10 on: September 07, 2023, 07:06:00 am »
Versions 3.0x/3.5, 3.65 and 4 all include extensive libraries for C++, including a very powerful library for building user interfaces. Versions 3.0x/3.5 use version 3 of the IBM open class library (IOC),  Versions 3.65/4 compilers are bundled with IOC version 4. Parts of the IOC were rewritten between versions 3 and 4.  The v 3 of the IOC seems more optimized (for performance) on OS/2 than v 4- at least the user interface parts of the library.

IOC was the real reason I wanted to install VA instead of a gcc toolchain - I've been reading the books on that, but unfortunately all of the books I've found are around IOC 3 and VA 3, not 4.

I keep managing to crash VA 4 too.

In my experience the programming editor (LxPM) bundled with version 3.0x does not work on AOS (and may not work with eCS).  However you can substitute EPM in the WorkFrame (the "ide" for version 3.0x) settings and that does work.  The version of LxPM that is bundled with version 4 does work with AOS.  While LxPM is integrated into the version 4 IDE you can execute LxPM as a standalone editor.

Okay that's handy, I was planning on using EPM anyhow.

but thanks so much for all the replies, super helpful info here.

One last question though - is there a VA 3.65, or is that the "C Compilers 3.65" package which doesn't have WorkFrame/2?

I've downloaded pretty much all of them, just need to figure out which one to use :)

Lars

  • Hero Member
  • *****
  • Posts: 1298
  • Karma: +65/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #11 on: September 07, 2023, 07:18:39 am »
3.6.5 does not include Workframe. And there is no other "vaeiant" of 3.6.5. It's just compiler,linker,Debugger.

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #12 on: September 08, 2023, 12:46:48 am »
Robert,

Do you have fixpack 1 installed for VAC 4?  That fixes instability problems.  If you click on the Help - About VisualAge C++ menu item that dialog will say if the fixpack is installed - see attached.  Unfortunately the fixpack breaks the links from the help "panels" to sample code.  The samples are still there, you just have to navigate to them manually.  I haven't had a crash with VAC 4 for years.  But I do have to Clean (under Program Workbook menu item) occasionally. 

You probably already have this book, but if not I highly recommend "Power GUI Programming with VisualAge for C++" by Tsuji, Love, Law and Olson.  It covers IOC version 3, but most of the concepts and specifics also apply to IOC v 4.  And it comes with LOTS of code samples. Very good code samples.  For example it was from one of the code samples that I got the idea for how to get color tabs in "classic" notebook controls - see attached. (I like the classic style notebooks better than the Warp 4 style notebooks that have the tabs along the top.

For Visual Builder I recommend  "VisualAge for C++ Visual Programmer's Handbook" by Nilsson and Jakab, and "Object-Oriented Application Development with VisualAge C++ for OS/2" by Carrel-Billiard, Jakab, Mauny and Vetter.  Those both are written for VAC 3, but the concepts for how Visual Builder works and how to construct parts, make connections, etc. all carry over from version 3.  A note of caution though - VB was rewritten from v 3 to v 4 and a project built in version 3 Visual Builder will not migrate to version 4.   

Robert Roland

  • Newbie
  • *
  • Posts: 7
  • Karma: +1/-0
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #13 on: September 09, 2023, 03:42:16 am »
Do you have fixpack 1 installed for VAC 4?  That fixes instability problems.  If you click on the Help - About VisualAge C++ menu item that dialog will say if the fixpack is installed - see attached.  Unfortunately the fixpack breaks the links from the help "panels" to sample code.  The samples are still there, you just have to navigate to them manually.  I haven't had a crash with VAC 4 for years.  But I do have to Clean (under Program Workbook menu item) occasionally. 

I just installed that - hopefully that stabilizes it a bit!

You probably already have this book, but if not I highly recommend "Power GUI Programming with VisualAge for C++" by Tsuji, Love, Law and Olson.  It covers IOC version 3, but most of the concepts and specifics also apply to IOC v 4.  And it comes with LOTS of code samples. Very good code samples.  For example it was from one of the code samples that I got the idea for how to get color tabs in "classic" notebook controls - see attached. (I like the classic style notebooks better than the Warp 4 style notebooks that have the tabs along the top.

I do have that book - it is quite good. I was worried about the difference between IOC 3 and 4, but it sounds like I shouldn't be.

For Visual Builder I recommend  "VisualAge for C++ Visual Programmer's Handbook" by Nilsson and Jakab, and "Object-Oriented Application Development with VisualAge C++ for OS/2" by Carrel-Billiard, Jakab, Mauny and Vetter.  Those both are written for VAC 3, but the concepts for how Visual Builder works and how to construct parts, make connections, etc. all carry over from version 3.  A note of caution though - VB was rewritten from v 3 to v 4 and a project built in version 3 Visual Builder will not migrate to version 4.

I will go find that book now!

Thanks!!

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: Installing VisualAge C++ 3.0 on ArcaOS 5.1.0
« Reply #14 on: September 10, 2023, 02:56:07 am »
Robert,

One last warning about VAC 4 Visual Builder.  If adapter 0 for TCP/IP is not active the Visual Builder part will not start.  For desktops this is usually not an issue, because most people only have one adapter specified in TCP/IP for a desktop machine.  But if you are using a laptop, and are switching between wireless and wired networking, then you probably have two adapters specified: adapter 0 and adapter 1: one is used for wireless connections and the other is used for wired. When you switch between wireless and wired one of those adapters is made inactive and the other is made active.

I am doing this from memory so I might be mis-stating  something.  But I believe if you are using a wireless card in your laptop you can choose whether adapter 0 is used for the wireless or the wired connection.  Whichever you choose, that will be the only type of connection you can use with version 4 Visual Builder.  This is not an issue for version 3.

And one warning for Visual Builder version 3.  I sometimes get a bunch of really strange error messages when I compile a project.  It appears the compiler gets confused.  Usually rerunning the compiler fixes that issue - the error messages.  I sometimes have had to rerun it 3 times, and once it took 4 times.  So if you are faced with a bunch of strange error messages when compiling, run the compiler again, a couple of times, before you spend time investigating the messages.

And sometimes you have to delete all the object files (*.obj) and recompile.  So if something that was working suddenly stops working, delete the object files and recompile.