Pytania otagowane jako gcc

GCC to kolekcja kompilatorów GNU. Jest to de facto standardowy kompilator dla C, C ++, Go, Fortran i Ady w systemie Linux i obsługuje również wiele innych języków i platform. Oprócz kompilatora GCC ma zestaw narzędzi (libc, libstdc ++, objdump, nm itp.), Które są szeroko stosowane na kilku platformach i systemach.

4
Nie rozumiem -Wl, -rpath -Wl,
Dla wygody dodałem odpowiednie strony poniżej. Moje (błędne) zrozumienie jako pierwsze: jeśli muszę oddzielić opcje ,, oznacza to, że druga -Wlnie jest inną opcją, ponieważ występuje przed nią, ,co oznacza, że ​​jest argumentem dla -rpathopcji. Nie rozumiem, jak -rpathmożna się -Wl,.kłócić! Co miałoby sens w moim umyśle to: -Wl,-rpath . …
244 gcc  ld  rpath 


21
Jak najlepiej wyciszyć ostrzeżenie o nieużywanych zmiennych?
Mam aplikację wieloplatformową i w niektórych moich funkcjach nie wszystkie wartości przekazywane do funkcji są wykorzystywane. Dlatego dostaję ostrzeżenie od GCC z informacją, że istnieją nieużywane zmienne. Jaki byłby najlepszy sposób kodowania wokół ostrzeżenia? #Ifdef wokół funkcji? #ifdef _MSC_VER void ProcessOps::sendToExternalApp(QString sAppName, QString sImagePath, qreal qrLeft, qreal qrTop, qreal qrWidth, …
237 c++  gcc  warnings  gcc-warning 

1
regresja wydajności std :: vector po włączeniu C ++ 11
Znalazłem interesującą regresję wydajności w małym fragmencie kodu C ++, gdy włączę C ++ 11: #include <vector> struct Item { int a; int b; }; int main() { const std::size_t num_items = 10000000; std::vector<Item> container; container.reserve(num_items); for (std::size_t i = 0; i < num_items; ++i) { container.push_back(Item()); } return 0; …
235 c++  performance  gcc  c++11  vector 

13
Usuwanie końcowego znaku nowej linii z wprowadzania fgets ()
Próbuję pobrać dane od użytkownika i wysłać je do innej funkcji w gcc. Kod jest mniej więcej taki. printf("Enter your Name: "); if (!(fgets(Name, sizeof Name, stdin) != NULL)) { fprintf(stderr, "Error reading Name.\n"); exit(1); } Uważam jednak, że ma on \nna końcu znak nowej linii . Więc jeśli Johnwejdę, …
235 c  string  gcc  newline  fgets 

13
Objective-C dla Windows
Jaki byłby najlepszy sposób napisania Objective-C na platformie Windows? Cygwin i gcc? Czy jest jakiś sposób, żeby jakoś zintegrować to z Visual Studio? Wzdłuż tych linii - czy są jakieś sugestie, jak połączyć się i użyć zestawu Windows SDK do czegoś takiego. To inna bestia, ale wiem, że mogę pisać …





6
typedef tablica o stałej długości
Muszę zdefiniować 24-bitowy typ danych. Używam char[3]do reprezentowania typu. Czy mogę napisać char[3]na maszynie type24? Próbowałem w próbce kodu. I umieścić typedef char[3] type24;w moim pliku nagłówka. Kompilator nie narzekał na to. Ale kiedy zdefiniowałem funkcję void foo(type24 val) {}w moim pliku C, narzekała. Chciałbym móc definiować funkcje takie jak …
210 c  arrays  gcc  typedef 

14
libpthread.so.0: błąd podczas dodawania symboli: brak DSO w linii poleceń
Podczas kompilowania openvswitch-1.5.0 napotkałem następujący błąd kompilacji: gcc -Wstrict-prototypes -Wall -Wno-sign-compare -Wpointer-arith -Wdeclaration-after-statement -Wformat-security -Wswitch-enum -Wunused-parameter -Wstrict-aliasing -Wbad-function-cast -Wcast-align -Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes -Wmissing-field-initializers -Wno-override-init -g -O2 -export-dynamic ***-lpthread*** -o utilities/ovs-dpctl utilities/ovs-dpctl.o lib/libopenvswitch.a /home/jyyoo/src/dpdk/build/lib/librte_eal.a /home/jyyoo/src/dpdk/build/lib/libethdev.a /home/jyyoo/src/dpdk/build/lib/librte_cmdline.a /home/jyyoo/src/dpdk/build/lib/librte_hash.a /home/jyyoo/src/dpdk/build/lib/librte_lpm.a /home/jyyoo/src/dpdk/build/lib/librte_mbuf.a /home/jyyoo/src/dpdk/build/lib/librte_ring.a /home/jyyoo/src/dpdk/build/lib/librte_mempool.a /home/jyyoo/src/dpdk/build/lib/librte_malloc.a -lrt -lm /usr/bin/ld: /home/jyyoo/src/dpdk/build/lib/librte_eal.a(eal.o): undefined reference to symbol 'pthread_create@@GLIBC_2.2.5' …

5
Jak zainstalować imagemagick z Homebrew?
Próbuję zainstalować Imagemagick na OSX Lion, ale coś nie działa zgodnie z oczekiwaniami. -> brew install imagemagick /usr/local/git/bin/git ==> Cloning https://github.com/adamv/ImageMagick.git Cloning into /Users/klebershimabuku/Library/Caches/Homebrew/imagemagick--git... fatal: https://github.com/adamv/ImageMagick.git/info/refs not found: did you run git update-server-info on the server? Error: Failure while executing: git clone --depth 1 https://github.com/adamv/ImageMagick.git /Users/kleber/Library/Caches/Homebrew/imagemagick--git lekarz parzenia mówi: -> …
201 git  gcc  homebrew  osx-lion  gcc4 

3
niezdefiniowane odniesienie do 'std :: cout'
Może to być przykład: #include <iostream> using namespace std; int main() { cout << "Hola, moondo.\n"; } Zgłasza błąd: gcc -c main.cpp gcc -o edit main.o main.o: In function `main': main.cpp:(.text+0xa): undefined reference to `std::cout' main.cpp:(.text+0xf): undefined reference to `std::basic_ostream<char,std::char_traits<char> >& std::operator<< <std::char_traits<char>>(std::basic_ostream<char, std::char_traits<char> >&, char const*)' main.o: In function …
197 c++  c++11  gcc  cout 

7
Jak włączyć (dosłownie) WSZYSTKIE ostrzeżenia GCC?
Chciałbym włączyć - dosłownie - WSZYSTKIE ostrzeżenia, które ma GCC. (Myślisz, że to będzie łatwe ...) Pomyślałbyś, że -Wallmoże załatwić sprawę, ale nie! Nadal potrzebuję -Wextra. Pomyślałbyś, że -Wextramoże załatwić sprawę, ale nie! Nie wszystkie ostrzeżenia wymienione tutaj (na przykład -Wshadow) są włączone przez to. I nadal nie mam pojęcia, …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.