No to powiedz mi co mam najlepiej zrobic zeby to zawsze szybko wykrywac takie bledy, jakie mam opcje
Nie sadze zeby odpowiedz "zainstaluj linuxa" Cie satysfakcjonowala
A "pisz w Kotlinie" pewnie jeszcze mniej
Moge zainstalowac linuksa, masz jakis filmik do tego moze?
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
@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.
postawie wirtualna maszyne i potem jak tam valgrinda czy cos tam odpalac? w terminalu ta ?
valgrind --leak-check=yes --track-origins=yes ./nazwa_binarki
tylko najpierw zainstaluj
sudo apt-get install valgrind
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 ?
Skompiluj. Binarka jest tylko jedna
W ogole dlaczego piszesz w C?
Mowisz, zeby pisac w C++? Czy tak ogolnie?
Zadania na zaliczenie
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
Jak już lecisz z linuksem to zacznij od address sanitizera
simonsoft napisał(a):
simonsoft napisał(a):
Mowisz, zeby pisac w C++? Czy tak ogolnie?
Zadania na zaliczenieJeszcze ze 100 + zadan, takze mam nadzieje ze dotrzymasz towarzystwa :D
Juz zainstalowalem, jaki memory sanitizer?
Dokładnie tego co poleciłem kilka stron temu :)
Dobra zrobilem, cos dziwnego pokazuje ze "(" unexpected ale nie wiem co dalej? Histogram valgrindowalem.
Valgrind używasz na pliku wykonywalnym. Ale serio, zacznij od address sanitizera!
kq napisał(a):
Valgrind używasz na pliku wykonywalnym. Ale serio, zacznij od address sanitizera!
kurde ale jak go sie uzywa musze cos instalowac?
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.
Nie kumam, mam QT Creatora na linuxa wrzucic, czy dodac linie do projektu na windowsie i potem skopiowac na linuksa?
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
gdzie to dopisac to ggdb? Podaj prosze cala komende
Teraz mam funkcje undefined
Po prawo film, ale nie chce mi sie ucinac juz
Musisz wszystkie pliki zrodlowe zalaczyc a nie tylko maina
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.
nie pyklo.
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.
ogarne dzieki, tylko nie wiem co to vu.o, zrobilo sie i co dalej?
To skompilowany plik obiektowy z vector_utils.c. Takie rzeczy to do kursu/książki zapraszam :)
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!