open-watcom / open-watcom-v2

Open Watcom V2.0 - Source code repository, Wiki, Latest Binary build, Archived builds including all installers for download.
Other
982 stars 160 forks source link

Open Watcom IDE didn't work anymore #383

Closed AlexN-114 closed 6 years ago

AlexN-114 commented 7 years ago

When I download your prebuild master.zip and copy the content in an empty directory and try to start the IDE after setting the environment variables in binnt, I get a dialog box with the message that Open Watcom IDE doesn't work anymore (OK - I get the message in german so your message could be different).

If I copy the IDE in an other directory without ide.cfg, the IDE starts correct but the menus are incomplete.

If its important, I tried it on Windows 7-64

Regards, Alex ;-)

PS: I have an old version of your builds (04.04.2017). There all worked. The versions between I haven't tried. :-(

jmalak commented 7 years ago

Thanks for bug report. It is related to the problem with Linux version of C++ compiler (I am investigating it now). C++ run-time library is broken and therefore any application using C++ code doesn't work. It will be fixed as soon as Linux C++ compiler will be fixed. If you build OW on Windows then all is working, but Travis build site use Linux OS that this problem affect Travis build.

AlexN-114 commented 7 years ago

Where can I find the source code of the IDE.

jmalak commented 7 years ago

It is part of OW source tree. It is not separate source code because it uses more OW sub-projects. I enclosed current OW IDE build for 32 and 64 bit Windows from my Windows build server. ow-ide.zip

revelator commented 7 years ago

Also broken when built with msvc (any supported version) and to top it off its also broken with the intel compiler :/

I also tried using clang on ubuntu and same problem, 32 bit version will not run.

jmalak commented 7 years ago

Thanks for your investigation. I am using msvc on Windows and all tree Windows versions of IDE are working (16/32/64 bits). My compiler is "Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64" for 64-bit and Open Watcom latest build version. Please, did you checked enclosed versions of IDE?

revelator commented 7 years ago

Latest i have is Microsoft (R) C/C++ Optimizing Compiler Version 19.11.25547 for x64 and i cannot build open watcom with it (C++11 problem most likely, since it fails to build the c++ apis) but yours is not much older than mine so im a bit baffled by this, cause your version works. Also a bit strange that neither the clang nor the gcc linux builds work Oo.

Sidenote: building installers is broken with both linux and msvc builds because some files (novel server versions mostly) are no longer built it seems.

revelator commented 7 years ago

For some reason it failed to link to comdlg32 in my version that's what seem to have caused the crash because after forcing it, it worked again (damn strange though). I can build it with msvc 2015 but i had to make a few alterations in the source, atleast it gave me time to remove the now missing files from the installer sources so i can now provide binary builds of the latest version if someone wants the installers.

jmalak commented 7 years ago

What files are missing? It is possible that something is broken for installer build process. I didn't try build it for long time.

jmalak commented 7 years ago

trap servers for windows are build again it is fixed by commit a6a85f99a455a22a0ba0b115455c5c9579d84b6f

jmalak commented 7 years ago

I also removed some files(no more existing) from OW distribution

revelator commented 7 years ago

Trap servers + some of the causeway files and some of the novell stuff, but i see you allready discovered that :)

jmalak commented 7 years ago

I am not sure if it is all, I checked to build installer on my Windows and fixed what was reported as missing. Some was realy missing, some was deleted as unnecessary. Are you able to build full OW or do you have still problems?

revelator commented 7 years ago

building now, ill turn back on that question if and when the build succeeds :)

only problem so far is a little reordering in some *.c sources if you want to use msvc 2015 with the win 10 api, not a big problem its only a few files, you should be able to see my modifications to them the next pull.

revelator commented 7 years ago

Looks like the same files i commented out so id say it should be good, but lets see :)

revelator commented 7 years ago

ok a few things do not work out of the box with msvc 2015, and there where a few more missing files.

link to diff https://sourceforge.net/projects/cbadvanced/files/Open-Watcom%20Builds/26-10-2017.patch/download

jmalak commented 7 years ago

I have some similar problem in the past, but it was resolved by installing latest update to Visual studio. I have VS 2015 + update 3.

jmalak commented 7 years ago

Anyway stddef.h must contains NULL macro definition by C language standard. If VS 2015 doesn't have it defined there it is bugy and you should look on some update. But take into account that MS has now universal C library separated from VS.

jmalak commented 7 years ago

What problem is with construct (void)p; (void)p2; ... in VS 2015?

revelator commented 7 years ago

something about executable statement cannot come before declaration.

And my error, all files are ok now forgot to include one of them, installers work again.

revelator commented 7 years ago

Hmm about the NULL statement, not according to msvc it seems 2017 also does not accept stddef.h on it's own and wants stdio.h. msvc 2010 seems to be ok with it though. Looking in there headers i cannot find it in stddef.h either only in stdio.h. Seems the win 10 abi does a few things quite differently.

revelator commented 7 years ago

(void)p; (void)p2;

might have been formatted accidentally, the only one that matters is the one i commented in that file.

I have VS 2015 + update 3.

and same but i am on windows 10 and it uses the windows 10 sdk, so that might explain the differing behaviour.

jmalak commented 7 years ago

NULL macro is included into stddef.h from core include file (for C) C:\Program Files (x86)\Windows Kits\10\Include\10.0.15063.0\ucrt\corecrt.h (it depends on your ucrt version)

I am compiling on Windows 7 and Windows 10 without similar problems.

revelator commented 7 years ago

Uploaded my build here if someone wants to check it out.

https://sourceforge.net/projects/cbadvanced/files/Open-Watcom%20Builds/27-10-2017/

revelator commented 7 years ago

Odd then, i do have the corecrt header and it does have NULL it seems but the neither msvc 2015 or 2017 will accept it for some reason when building watcom. Strange though i tried a test case to see if it affected other things and it will accept it there so ?!?. Newer heard of antivirus blocking a single definition so that cannot be it, need to investigate further.

jmalak commented 7 years ago

Great that you publish installer. It was requested several times before.

To header problem. Because OW build environment is multiplatform and uses cross-compilation to other platform then host platform, it is important how INCLUDE environment is handled on your box. If you don't use WATCOM compilers for bootstrap you must not setup anything related to WATCOM compilers (all environment variable should not be filled by any WATCOM configuration). Host native compiler should be setup properly. If you use WATCOM compiler for bottstrap you must setup it as for application development for host platform. In your case if you use VS as bootstrap compiler you should not setup anything related to WATCOM compilers.

I found out a few problems with Microsoft macros in Windows headers that it was necessary to resolve it. Stupid MS Guys use one characters macros in theirs Windows headers etc. It is hard to detect. Best is to precompile source and look on if headers are properly included and what macros are defined etc.

jmalak commented 7 years ago

FYI. I am initializing VS by call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 in OW setup script.

revelator commented 7 years ago

Np :), i have not had watcom on PATH for some time because of this, i did have pellesc on path it turned out, but im not sure this would break it unless msvc by some chance picked up it's includes, in that case yes that would probably not work to well.

I use a similar approach to calling the microsoft tools, allthough if i want to use the intel compilers with msvc, then i have to start the shell script shortcuts else it gets way messy.

ghost commented 7 years ago

Windows 10 x64 (latest updates). IDE crashes on startup on the latest master.zip

revelator commented 7 years ago

From my newly built installers ?, cause i use the same OS and they work here. There's some very odd behaviour on this new windows update.

ghost commented 7 years ago

I will try that build tonight. I've just been trying the master.zip builds so far.

ghost commented 7 years ago

@revelator I downloaded the open-watcom-2_0-c-win-x64 installer. ~It doesn't run at all, double-click and nothing. It's not even in the task manager, so no process even started.~

UPDATE: I uncompressed the exe file and I CAN run the ide from the binnt folder, but from the binnt64 folder everything does not start. It fails and stops instantly, no warning or anything. Even viw from binnt64 cannot run.

jmalak commented 7 years ago

I added new repository with test version of installers OW 2.0 Installers 2017-11-01

jmalak commented 7 years ago

Take into account this is about 1GB of space for all installers.

revelator commented 7 years ago

damn thats odd, it runs here ? not sure what gives unless by some chance it now requires a specific windows runtime.

revelator commented 7 years ago

ok checked with dependency viewer and no, thats not the problem. There is one executable in my binnt64 folder which does not run the resource editor, but besides that one they all run. I did have some problems with sourceforge flagging the builds as infected (false positive) and i have inquired about getting them unflagged, but it might have happened that the antivirus they use has destroyed the executables it found to have suspicious code. Sure that will get them some friends lol.

jmalak commented 7 years ago

FYI I am using CRTL - windows kits\10\include\10.0.15063.0\ucrt

revelator commented 7 years ago

10.0.14393.0 here, so mines a bit older it seems.

ghost commented 7 years ago

I'll check mine later at home and test again from the new URL above.

jmalak commented 7 years ago

And build PC is Windows 10 Version 1607

revelator commented 7 years ago

windows 10 1709 here, i just got the fall update.

jmalak commented 7 years ago

I am also using as main build server Windows 2003 Server (it still support 16-bit DOS/Windows applications) good for 16-bit reggresion tests. And also one build PC with Windows XP. One OpenSuse Linux Leap 42 and one Ubuntu 16.04 Old build Server with OpenSuse 12.2 (32-bit) on Atom processor, it is responsible for build OW on 32-bit Linux, repositories synchronization (Perforce -> Git, Github->SourceForge) and ather tasks. Sometimes I run one OS/2 box.

revelator commented 7 years ago

For DOS i mostly use OS2 :) no better dos than what came with that OS. I also sport a linux box though win 10 comes with ubuntu in WSL so most things can be built on the same box now (yes WSL can build open-watcom if setup correctly). I also have an older machine with win 7 i use as a HTPC . As for windows 10 i have some mixed feelings about that OS, privacy for one, but it also wants to control anything i do and thats not something i like. So the day i cannot hack my way around that i will drop windows and go full linux.

revelator commented 7 years ago

Doing a new build now, if you want to test any executable in particular feel free to post me, would be nice to get to the bottom of why it works here and not on your machine.

jmalak commented 7 years ago

try to check functionality in rel tree before you create installer to be sure that it is not problem of ZIP-ing and installer build.

revelator commented 7 years ago

all executables seem to run in latest build, also in the rel dir. i wonder if the msvc 2017 build i did earlier had set machine optimization to an arch your's do not support ?. New build was done with msvc 2015 and the intel parallel studio XE 2017 compiler update 4.

jmalak commented 7 years ago

Now build system recognize version of compiler used for bootstrap that we can specify one options for VS2015 and others for VS2017 etc. Please, could you check what version is reported for Intel compiler, if value has sense. If you run setup script on the end is displayed line as Open Watcom build environment (VISUALC version=1900)

ghost commented 7 years ago

Using 10.0.15063.0.

The new installers (64bit) worked perfectly and ide, editor etc work fine. Only problem is after the installation has completed I got a 'installer has stopped working' error which shut it down instead of exiting cleanly. Otherwise, no issues.

revelator commented 7 years ago

Open Watcom build environment (INTEL version=1700) pretty straight forward it seems :)

revelator commented 7 years ago

atsb, aye i get the same, not sure if it has anything to do with permissions cause win10 latest update now requires admin to install anywhere on the drive but the user folders, even C:\

jmalak commented 7 years ago

Good news from both. It looks like main problem is bugy MS UCRTL lower then 10.0.15063.0. OW mainly use POSIX functions and it looks like not main focus for MS.