Error when run executable on another PC

Hi Dave,
I am developing a code and compile it on my laptop with PGI compiler. It has a DLL and executable, which just calls the DLL. It runs fine on the laptop where it is compiled. But when it runs on my PC, it gives error message:

The application was unable to start correctly (0xc00007b).
and cannot proceed further.

The PGI redistribute dlls are in the same directory as that of the executable and DLL.

I wonder what causes the problem.

Regards
Jingyu

run

pgfortran -V

on your laptop and see what type CPU you have.

If the other machine is an older CPU, it may be running instructions
that do not work.

Then go back to the laptop and add
-tp Nehalem
or
-tp sandybridge

or something that will run on both systems.

Difficult to use a DLL built on a newer version of Windows to
work on an older version of Windows. What versions are you running?

Newer pgfortran versions requires Windows 10 SDK to work. Does the target machine have Win10 SDK?

dave

Thanks very much Dave.
Both laptop and PC have Windows 7 and 64-bit operating system.
The compiler I use is also old one 16.3.

Somehow I setup 32-bit target on x86-64 Windows.
Is this the cause of problem?
Kind regards
Jingyu

You should only download and install the 64-bit packages for 64-bit Windows systems. The older 64-bit packages also had 32-bit in them, but we
have dropped the 32-bit support in all our current packages.


dave

I enabled all intel processors in Fortran ->Target Processors in PVF and it did not work.

From your comment that “Difficult to use a DLL built on a newer version of Windows to work on an older version of Windows”, I tried to just create a single executable, without the DLL. And it works.

It does the job I want to do at the moment. So leave it for now and may need to come back when I need the DLL.

Thanks for the help.

Jingyu