SIGSEGV problem z detekcja

0

No to powiedz mi co mam najlepiej zrobic zeby to zawsze szybko wykrywac takie bledy, jakie mam opcje

0

Nie sadze zeby odpowiedz "zainstaluj linuxa" Cie satysfakcjonowala

A "pisz w Kotlinie" pewnie jeszcze mniej

0

Moge zainstalowac linuksa, masz jakis filmik do tego moze?

0

Ehh, no ja po prostu instaluje. A szukac mozesz tak samo efektywnie jak ja.

Polecam Minta/Manjaro z Cinnamonem
I najlepiej na poczatku zainstaluj obok windowsa

0

@simonsoft: Skopiowałem to co wrzuciłeś w pierwszym poście (wywaliłem tylko #include "vector_utils.h") i w VS17 nic mi nie wywala.

0

postawie wirtualna maszyne i potem jak tam valgrinda czy cos tam odpalac? w terminalu ta ?

0
valgrind --leak-check=yes --track-origins=yes ./nazwa_binarki

tylko najpierw zainstaluj

sudo apt-get install valgrind
0
stivens napisał(a):
valgrind --leak-check=yes --track-origins=yes ./nazwa_binarki

tylko najpierw zainstaluj

sudo apt-get install valgrind

a jak mam to podzielone na pliki to ktore odpalam?
np. valgrind --leak-check=yes --track-origins=yes ./main.c ?

0

Skompiluj. Binarka jest tylko jedna

W ogole dlaczego piszesz w C?

0

Mowisz, zeby pisac w C++? Czy tak ogolnie?
Zadania na zaliczenie

0
simonsoft napisał(a):

Mowisz, zeby pisac w C++? Czy tak ogolnie?
Zadania na zaliczenie

Jeszcze ze 100 + zadan, takze mam nadzieje ze dotrzymasz towarzystwa :D

0

Jak już lecisz z linuksem to zacznij od address sanitizera

0
simonsoft napisał(a):
simonsoft napisał(a):

Mowisz, zeby pisac w C++? Czy tak ogolnie?
Zadania na zaliczenie

Jeszcze ze 100 + zadan, takze mam nadzieje ze dotrzymasz towarzystwa :D

title

0

Juz zainstalowalem, jaki memory sanitizer?

0

Dokładnie tego co poleciłem kilka stron temu :​)

0

Dobra zrobilem, cos dziwnego pokazuje ze "(" unexpected ale nie wiem co dalej? Histogram valgrindowalem.

https://imgur.com/a/KyzK5nk

0

Valgrind używasz na pliku wykonywalnym. Ale serio, zacznij od address sanitizera!

0
kq napisał(a):

Valgrind używasz na pliku wykonywalnym. Ale serio, zacznij od address sanitizera!

kurde ale jak go sie uzywa musze cos instalowac?

0

Nie, będziesz miał go gratis z gcc. Użycie: tak jak pokazałem wcześniej. Otwórz projekt w Qt Creatorze, dodaj te linie i tyle.

0

Nie kumam, mam QT Creatora na linuxa wrzucic, czy dodac linie do projektu na windowsie i potem skopiowac na linuksa?

0

No zainstaluj sobie Qt jak masz projekt w tym, i zrób to co powiedziałem. Alternatywnie do opcji kompilacji dodaj -ggdb -fsanitize=address -lasan

0

gdzie to dopisac to ggdb? Podaj prosze cala komende
Teraz mam funkcje undefined

screenshot-20190823213003.png

Po prawo film, ale nie chce mi sie ucinac juz

1

Musisz wszystkie pliki zrodlowe zalaczyc a nie tylko maina

0

Jakoś tak, ale pisane z palca:

gcc vector_utils.c -ggdb -o vu.o
gcc vu.o main.c -ggdb -fsanitize=address -lasan -o main

Albo ściągnij sobie na ubuntu Qt i rób dokładnie tak jak na windowsie.

0

nie pyklo.

screenshot-20190823223525.png

1
gcc vector_utils.c -ggdb -c -o vu.o
gcc vu.o main.c -ggdb -fsanitize=address -lasan -o main

Przepraszam, tak jak pisałem - pisane z palca. (różnica: -c w pierwszej linii)

Swoją drogą, na przyszłość ogarnij co tymi komendami tu robię, bo bardzo Ci się to przyda.

0

ogarne dzieki, tylko nie wiem co to vu.o, zrobilo sie i co dalej?

0

To skompilowany plik obiektowy z vector_utils.c. Takie rzeczy to do kursu/książki zapraszam :​)

0

screenshot-20190823230025.png

0

Dlaczego nie odpalisz pliku wykonywalnego main? Tak samo valgrind oczekuje pliku wykonywalnego, a nie źródeł. Ale już któryś raz powtarzam - zacznij od address sanitizera!

1 użytkowników online, w tym zalogowanych: 0, gości: 1