Trước hết tôi đang chạy MacOSX 10.7.1. Tôi đã cài đặt tất cả đúng, Xcode 4 và tất cả các thư viện, để làm việc với C lenguage.lệnh gprof không tạo đúng out.txt
Tôi gặp sự cố khi chạy lệnh gprof trong trình bao. Tôi sẽ giải thích từng bước những gì tôi đang làm và đầu ra tôi nhận được.
Bước 1:
~ roger$ cd Path/to/my/workspace
~ roger$ ls
Output (Bước 1):
queue.c queue.h testqueue.c
Bước 2:
~ roger$ gcc -c -g -pg queue.c
~ roger$ ls
Output (Bước 2):
queue.c queue.h queue.o testqueue.c
.210
Bước 3:
~ roger$ gcc -o testqueue -g -pg queue.o testqueue.c
~ roger$ ls
Output (Bước 3):
queue.c queue.h queue.o testqueue testqueue.c
Bước 4:
~ roger$ ./testqueue
~ roger$ ls
Output (Bước 4):
enqueue element 16807
head=0,tail=1
enqueue element 282475249
head=0,tail=2
enqueue element 1622650073
head=0,tail=3
enqueue element 984943658
head=0,tail=4
enqueue element 1144108930
head=0,tail=5
enqueue element 470211272
head=0,tail=6
enqueue element 101027544
head=0,tail=7
enqueue element 1457850878
head=0,tail=8
enqueue element 1458777923
head=0,tail=9
enqueue element 2007237709
head=0,tail=10
queue is full
dequeue element 16807
dequeue element 282475249
dequeue element 1622650073
dequeue element 984943658
dequeue element 1144108930
dequeue element 470211272
dequeue element 101027544
dequeue element 1457850878
dequeue element 1458777923
dequeue element 2007237709
queue is empty
gmon.out queue.h testqueue
queue.c queue.o testqueue.c
Bước 5 :
~ roger$ gprof -b testqueue gmon.out > out.txt
~ roger$ nano out.txt
Output (Bước 5):
GNU nano 2.0.6 File: out.txt
granularity: each sample hit covers 4 byte(s) no time propagated
called/total parents
index %time self descendents called+self name index
called/total children
^L
granularity: each sample hit covers 4 byte(s) no time accumulated
% cumulative self self total
time seconds seconds calls ms/call ms/call name
^L
Index by function name
Cuối cùng. Tệp đầu ra sẽ hiển thị thông tin như sau:
% cumulative self self total
time seconds seconds calls ms/call ms/call name
33.34 0.02 0.02 7208 0.00 0.00 open
16.67 0.03 0.01 244 0.04 0.12 offtime
16.67 0.04 0.01 8 1.25 1.25 memccpy
16.67 0.05 0.01 7 1.43 1.43 write
16.67 0.06 0.01 mcount
0.00 0.06 0.00 236 0.00 0.00 tzset
0.00 0.06 0.00 192 0.00 0.00 tolower
0.00 0.06 0.00 47 0.00 0.00 strlen
0.00 0.06 0.00 45 0.00 0.00 strchr
0.00 0.06 0.00 1 0.00 50.00 main
0.00 0.06 0.00 1 0.00 0.00 memcpy
0.00 0.06 0.00 1 0.00 10.11 print
0.00 0.06 0.00 1 0.00 0.00 profil
0.00 0.06 0.00 1 0.00 50.00 report
...
Và nó hiển thị trường trống.
Tôi đã tìm kiếm ở đây và tôi thấy không có gì hữu ích cả. Tôi google nó nhưng điều tương tự.
Tôi sẽ rất biết ơn Nếu có ai có thể giúp tôi.
Bạn có thể làm [tốt hơn so với gprof] (http://stackoverflow.com/câu hỏi/1777556/lựa chọn thay thế-to-gprof/1779343 # 1779343). –