0

I've try to compile this code with Visual Studio 2012 but I get the errors below. How can I fix that? And they are due to what? However the program run fine but in singlethreaded mode.

#include <stdio.h>
#include <time.h>
#include <omp.h>

int main() {
    double start, end;
    double runTime;
    start = omp_get_wtime();
    int num = 1,primes = 0;

    int limit = 1000000;

#pragma omp parallel for schedule(dynamic) reduction(+ : primes)
    for (num = 1; num <= limit; num++) { 
        int i = 2; 
        while(i <= num) { 
            if(num % i == 0)
                break;
            i++; 
        }
        if(i == num)
            primes++;
//      printf("%d prime numbers calculated\n",primes);
    }

    end = omp_get_wtime();
    runTime = end - start;
    printf("This machine calculated all %d prime numbers under %d in %g seconds\n",primes,limit,runTime);

    return 0;
}

'ConsoleApplication4.exe' (Win32): Loaded 'C:\Users\Administrator\Documents\Visual Studio 2012\Projects\ConsoleApplication4\x64\Debug\ConsoleApplication4.exe'. Symbols loaded.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\msvcp110d.dll'. Symbols loaded.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\msvcr110d.dll'. Symbols loaded.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\vcomp110d.dll'. Symbols loaded.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\lpk.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\usp10.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\imm32.dll'. Cannot find or open the PDB file.
'ConsoleApplication4.exe' (Win32): Loaded 'C:\Windows\System32\msctf.dll'. Cannot find or open the PDB file.
The thread 0x11f0 has exited with code -1073741510 (0xc000013a).
The program '[4908] ConsoleApplication4.exe' has exited with code -1073741510 (0xc000013a).
Community
  • 1
  • 1
Aurelius
  • 689
  • 1
  • 6
  • 16
  • 4
    It looks like your program compiled just fine, but crashes while running. Run it in a debugger to investigate. – Frank Osterfeld Oct 06 '13 at 12:45
  • 1
    The messages you posted are not errors. They mean that you do not have debugging symbols loaded for Microsoft libraries. But that's OK. – ScottMcP-MVP Oct 06 '13 at 13:00
  • You should protect the access to `primes` with a `#pragma omp critical`. (But that's probably not the cause of your problems) – stefan Oct 06 '13 at 13:02
  • @FrankOsterfeld after installing Visual Studio 2012, should I download something in order to run or compile it? e.g. packages etc? – Aurelius Oct 09 '13 at 09:58
  • Go into the Project->Config->C/C++->Precompiled Header and turn off precompiled headers. – user2548100 Oct 29 '13 at 00:24

0 Answers0