Znowu męczę Wasze spokojnie śpiące umysły o pierdoły, ale mam problem z Code Blocks i dołączaniem statycznych bibliotek do projektu. Mianowicie buduję sobie bibliotekę *.a za również za pomocą C::B (z plików: .h oraz .cpp) i dodaję ją w moim głównym projekcie w opcjach Linkera. Niestety nie mogę zbudować projektu ponieważ wyskakują mi błędy undefined reference, czyli nie znajduje mi funkcji, procedur, konstruktorów, i tak dalej. Nie wiem kompletnie gdzie jest błąd
Wszystko
Wszystkie
Archiwum
- 1
Mam pewną aplikację, która w dużej mierze wykorzystuje boosta i libstdc++, dużo zyskam na wydajności jeśli skompiluję je z parametrem -march=native zamiast ściągać je z repo?
[ #cpp #programowanie #linux #kompilacja #gcc ]
[ #cpp #programowanie #linux #kompilacja #gcc ]
- 3
troche beton, ale dużo w tym racji:
http://www.youtube.com/watch?v=i2fhNVQPb5I&feature=share
#programowanie #gcc
http://www.youtube.com/watch?v=i2fhNVQPb5I&feature=share
#programowanie #gcc
- 0
@UczciwyCygan: Ha ha, a ja widziałem ze chciałeś ustawić uint'a na index w C# :D
@trzeci: lepiej, teraz to zrobilem na kompie w domu i bangla, jutro pierwsze co zrobie w robocie to sprawdze to :D
- 1
- 2
mirki poratujcie w C bo jest 5 rano a ja mi się kawa skończyła: mam tablicę uint8t tablica[10] (10 elementów 8bitowych) jak szybko obliczyć/sprawdzić czy liczba (w całej tablicy razem) bitów równych 1 jest parzysta? Przy czym szybko = mam mało wolnych cykli cpu, nie mogę się zabawiać w przemielenie 80 bitów jeden za drugim ;)
Nie chodzi mi o to, czy liczby_ są parzyste, tylko muszę wiedzieć czy mam parzystą
Nie chodzi mi o to, czy liczby_ są parzyste, tylko muszę wiedzieć czy mam parzystą
- 1
hm, a coś mi takiego przychodzi do głowy:
- jak sprawdzić np liczbę zer (lub jedynek) czy jest parzysta w jednym bajcie? wystarczyło by bit do bitu porównać XOR, tzn 1 z 2, 3 z 4, 5 z 6 , 7z8 = wynik to 4 bity, wystarczy znów te 4 bity porównać xor = wynik 2 bity, xor ich - i jesli 0 = liczba zer/jedynek parzysta
- można też inaczej, jedno-po
- jak sprawdzić np liczbę zer (lub jedynek) czy jest parzysta w jednym bajcie? wystarczyło by bit do bitu porównać XOR, tzn 1 z 2, 3 z 4, 5 z 6 , 7z8 = wynik to 4 bity, wystarczy znów te 4 bity porównać xor = wynik 2 bity, xor ich - i jesli 0 = liczba zer/jedynek parzysta
- można też inaczej, jedno-po
Dlaczego mając program który korzysta z biblioteki która ma możliwość importu inny bibliotek współdzielonych musimy w g++ dawać flage "-ldl" a nie w samej biblioteczce (bo w sumie w tym wypadku nic się nie dzieje tzn program który korzysta z głównej biblioteczki pluje błedami))?
#programowanie #gcc
#programowanie #gcc
@sylwke3100: To ty nie zrozumiałeś odpowiedzi.
jest linkowane do programu głównego, a nie do innej biblioteki – zgadza się? Właśnie z tego powodu o którym pisałem. Pamiętaj, że każda biblioteka może być zlinkowana co najwyżej raz. Jeśli
zlinkujesz (hipotetycznie) do A i do B, to wykorzystanie A i B naraz będzie niemożliwe. Dlatego właśnie stosuje się tego typu loose coupling linkując wszystkie biblioteki do programu wykonywalnego.
Implementacja funkcji biblioteki
libdl
jest linkowane do programu głównego, a nie do innej biblioteki – zgadza się? Właśnie z tego powodu o którym pisałem. Pamiętaj, że każda biblioteka może być zlinkowana co najwyżej raz. Jeśli
libdl
zlinkujesz (hipotetycznie) do A i do B, to wykorzystanie A i B naraz będzie niemożliwe. Dlatego właśnie stosuje się tego typu loose coupling linkując wszystkie biblioteki do programu wykonywalnego.
Implementacja funkcji biblioteki
17
Zakodziłeś, kliknij kompiluj
Czy wiedziałeś jak działa proces kompilacji. Tutaj na przykładzie C/C++, świetny podcast.
z- 3
- #
- #
- #
- #
- #
- #
- 2
@Crypton3: czyta sobie cpuinfo i kompiluje z flagami/rozszerzeniami jakie obsluguje twoje cpu.
Czemu, gdy dam -march=native, to gcc doklada flage -mtune=generic? Nie wiem, czy przejmowac sie tym czy nie, bo dokumentacja mowi, ze generic tworzy kod dzialajacy na roznych procesorach, a tego nie chce (w koncu po to daje -march=native, zeby kod byl zoptymalizowany dla jednego typu procesora) :x
#pytaniedoeksperta #gcc #linux #gentoo #kompilujo
#pytaniedoeksperta #gcc #linux #gentoo #kompilujo
- 0
@rasguanabana: tych flag co nie dobierze dorzuca się samemu i tyle. Na którymś wiki gentoo była ładna lista jakie CFLAGS ustawiać dla konkretnych procesorów.
@11mariom: taki miałem plan na początku, żeby dorzucić samemu, ale zauważyłem, że całkiem ładnie dobiera :D jeszcze sobie zresztą trochę o tym poszperam.
- 1
http://blip.pl/s/1122024869 #linux #gcc a jednak już wydumałem co robiłem źle - uparcie chciałem linkować z libjpeg a powinienem z jpeg :P
- 1
- 2
http://blip.pl/s/133059358 #programowanie #valve używa #gcc z ok 2000-2003 bo hlds się wysypuje na nowych.
- 2
7
Optymalizacja kodu przez kompilatory
Prezentacja Rolfa Rolles-a, dotycząca binarnej optymalizacji kodu. 67 slajdów sztuczek wykorzystywanych przez kompilatory do przyspieszenia naszych aplikacji
z- Dodaj Komentarz
- #
- #
- #
- #
- #
- #
17
Dla tworzących 4k intra pod linuksem
Jak uszczuplić kod naszego dema/intra tworzony przez gcc? W artykule znajdzie się również przykład (de)kompresji pliku wykonywalnego oraz parę wskazówek
z- 5
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
8
GCC automatycznie zoptymalizuje kod pod kątem wielowątkowości
W niedługim czasie zbiór wolnych kompilatorów, znany pod nazwą GCC, zyska możliwość automatycznej optymalizacji kodu, by ten wykonywał się wielowątkowo i wykorzystywał lepiej procesory wielordzeniowe.
z- Dodaj Komentarz
- #
- #
- #
- #
- #
- #
- #
#naukaprogramowania #codeblocks #gcc
Probably the toolchain path within the compiler options is not setup correctly?! (Do you have a compiler
http://www.codeblocks.org/downloads/26
plik codeblocks-13.12mingw-setup.exe
zgodnie z opisem:
"NOTE: The codeblocks-13.12mingw-setup.exe file includes the GCC compiler and GDB debugger from TDM-GCC (version 4.7.1, 32 bit)"