2017-07-20 3 views
1

Um die Zeit einiger Teile eines Programms zu messen, möchte ich die Funktion omp_get_wtime() von OpenMP verwenden. Ich kann das Projekt nur in 32 Bits kompilieren (mit der gcc-Option -m32). Und ich bekomme diese Fehler:OpenMP omp_get_wtime g ++ 32bits

libgomp.a(time.o): In function 'gomp_ialias_omp_get_wtick': 
    undefined reference to 'clock_getres' 
libgomp.a(time.o): In function 'gomp_ialias_omp_get_wtime': 
    undefined reference to 'clock_gettime' 

Während ich habe keine Fehler, wenn ich in 64-Bit kompilieren (ich einen einfachen Test gemacht).

Ich verwende -fopenmp zu verknüpfen openmp. Ich habe versucht, -gomp hinzuzufügen, aber es hat nichts geändert.

Ich laufe unter einem 2012 Cent OS Release (64Bits), und kompilieren mit gcc 4.4.7.
Und um es witziger zu machen, kann ich nichts mit aktualisieren oder installieren, aber ich kann einige fehlende Bibliotheken aus Quellen kompilieren.

Antwort

2

Ältere Versionen von glibc definieren clock_getres und clock_gettime in librt, nicht libc, so müssen Sie wahrscheinlich nur mit -lrt verknüpfen.

+0

Es funktioniert, danke;) – Phantom