Pytania oznaczone «gcc»

85
Jaka jest różnica między gcc / g ++ i cc1 / cc1plus?

Kiedy mogę skompilować moje projekty i sprawdzić zasoby używane przez uruchomienie top, wielki wieprz CPU / pamięci jest czasami nazywany g++czasem cc1plus. Jaka jest różnica między nimi i czy powinienem zadzwonić cc1plusbezpośrednio?

83
Jakie są opcje wiersza poleceń --start-group i --end-group?

Jaki jest cel tych opcji wiersza poleceń? Proszę o pomoc w rozszyfrowaniu znaczenia następującego wiersza poleceń: -Wl,--start-group -lmy_lib -lyour_lib -lhis_lib -Wl,--end-group -ltheir_lib Najwyraźniej ma to coś wspólnego z linkowaniem, ale w podręczniku GNU jest cicho, co dokładnie oznacza...

82
Konflikt między samouczkiem Stanford a GCC

Zgodnie z tym filmem (około 38 minuty), jeśli mam dwie funkcje z tymi samymi lokalnymi zmiennymi, będą one używać tej samej przestrzeni. Powinien więc wydrukować poniższy program 5. Kompilowanie go z gccwynikami -1218960859. czemu? Program: #include <stdio.h> void A() { int a;...

81
Dlaczego pad GCC działa z NOP?

Pracuję z C przez krótki czas i bardzo niedawno zacząłem zajmować się ASM. Kiedy kompiluję program: int main(void) { int a = 0; a += 1; return 0; } Demontaż objdump ma kod, ale nops po ret: ... 08048394 <main>: 8048394: 55 push %ebp 8048395: 89 e5 mov %esp,%ebp 8048397: 83 ec...

79
Niezdefiniowane odniesienie do stałej statycznej int

Dzisiaj natknąłem się na ciekawy problem. Rozważmy ten prosty przykład: template <typename T> void foo(const T & a) { /* code */ } // This would also fail // void foo(const int & a) { /* code */ } class Bar { public: static const int kConst = 1; void func() { foo(kConst); //...

79
Powiązanie z biblioteką dynamiczną z zależnościami

Rozważ następujący scenariusz: Biblioteka współdzielona libA.so, bez zależności. Biblioteka współdzielona libB.so, z libA.so jako zależnością. Chcę skompilować plik binarny, który łączy się z biblioteką libB. Czy powinienem połączyć plik binarny tylko z libB, czy też z libA? Czy istnieje...

23
gcc-10.0.1 Określony błąd segmentu

Mam pakiet R z kompilowanym kodem C, który był stosunkowo stabilny od dłuższego czasu i jest często testowany na wielu różnych platformach i kompilatorach (windows / osx / debian / fedora gcc / clang). Niedawno dodano nową platformę do ponownego przetestowania pakietu: Logs from checks with gcc...

20
W jaki sposób makro lambda tworzy lambda?

Znalazłem ten fragment kodu na GitHub, ale nie do końca go zrozumiałem: #define lambda(ret_type, _body) ({ ret_type _ _body _; }) Następnie: int (*max)(int, int) = lambda(int, (int x, int y) { return x > y ? x : y; }); int max_value = max(1, 2); // max_value is 2 Co robią podkreślenia...