Als «gcc» getaggte Fragen

GCC ist die GNU Compiler Collection. Es ist der De-facto-Standard-Compiler für C, C ++, Go, Fortran und Ada unter Linux und unterstützt auch viele andere Sprachen und Plattformen. Neben dem Compiler verfügt GCC über eine Toolchain (libc, libstdc ++, objdump, nm usw.), die auf verschiedenen Plattformen und Systemen weit verbreitet ist.

3
Header-Dateien mit der Befehlszeilenoption einschließen?
Ist es möglich, zusätzliche Header-Dateien anzugeben, die über die Befehlszeile aufgenommen werden sollen (mit GCC 4 / C ++)? Oder gibt es eine andere Möglichkeit, Dateien einzuschließen, als mit #include? Hintergrund: Ich versuche, eine große Codebasis auf meinem eigenen PC zu kompilieren. Der Code wird normalerweise in einem Cluster mit …
78 c++  gcc  include 

9
Warum initialisiert malloc die Werte in gcc auf 0?
Vielleicht ist es von Plattform zu Plattform unterschiedlich, aber Wenn ich mit gcc kompiliere und den folgenden Code ausführe, erhalte ich in meinem Ubuntu 11.10 jedes Mal 0. #include <stdio.h> #include <stdlib.h> int main() { double *a = (double*) malloc(sizeof(double)*100) printf("%f", *a); } Warum verhält sich Malloc so, obwohl es …
77 c  linux  gcc  malloc 

4
Wo sind Include-Dateien gespeichert - Ubuntu Linux, GCC
Wenn wir also Folgendes tun: #include <stdio.h> gegen #include "myFile.h" Der Compiler, in meinem Fall GCC, weiß, wo sich diese stdio.h (und sogar die Objektdatei) auf meiner Festplatte befinden. Es werden nur die Dateien ohne Interaktion von mir verwendet. Ich denke, dass auf meinem Ubuntu Linux-Computer die Dateien gespeichert sind …
77 linux  gcc  location  include 

4
Was ist der Unterschied zwischen "gcc -s" und einem "strip" -Befehl?
Ich frage mich, was der Unterschied zwischen diesen beiden ist: gcc -s: Entfernen Sie alle Symboltabellen- und Verschiebungsinformationen aus der ausführbaren Datei. strip: Verwerfen Sie Symbole aus Objektdateien. Haben sie die gleiche Bedeutung? Welches verwenden Sie, um: Größe der ausführbaren Datei reduzieren? das Laufen beschleunigen?
77 gcc  strip  symbols 


4
Lassen Sie C-Gleitkomma-Literale schweben (anstatt zu verdoppeln)
Es ist bekannt, dass in C Gleitkomma-Literale (z . B. 1.23) einen Typ haben double. Infolgedessen wird jede Berechnung, die sie betrifft, auf das Doppelte hochgestuft. Ich arbeite an einem eingebetteten Echtzeitsystem mit einer Gleitkommaeinheit, die nur floatZahlen mit einfacher Genauigkeit ( ) unterstützt. Alle meine Variablen sind float, und …



6
So deaktivieren Sie die Optimierung des gcc-Compilers, um den Pufferüberlauf zu aktivieren
Ich arbeite an einem Hausaufgabenproblem , bei dem der Compiler-Optimierungsschutz deaktiviert werden muss, damit es funktioniert. Ich verwende gcc 4.4.1 unter Ubuntu Linux, kann aber nicht herausfinden, welche Flags die richtigen sind. Mir ist klar, dass es von der Architektur abhängt - auf meinem Computer läuft ein 32-Bit-Intel-Prozessor. Vielen Dank.

4
C ++ Kompilierungsfehler?
Ich habe folgenden Code: #include <iostream> #include <complex> using namespace std; int main() { complex<int> delta; complex<int> mc[4] = {0}; for(int di = 0; di < 4; di++, delta = mc[di]) { cout << di << endl; } return 0; } Ich erwarte, dass es "0, 1, 2, 3" ausgibt …



7
Wie kompiliere ich den von GCC generierten ASM?
Ich spiele mit ASM-Code herum und etwas stört mich. Ich kompiliere das: #include <stdio.h> int main(int argc, char** argv){ printf("Hello World\n"); return 0; } mit gcc file.c -S -o file.Sdieser erzeugt ein schönes kleines Stück asm - Code: .cstring LC0: .ascii "Hello World\0" .text .globl _main _main: LFB3: pushq %rbp …


3
Der Unterschied zwischen asm, asm volatile und clobbering memory
Bei der Implementierung sperrenfreier Datenstrukturen und Timing-Codes müssen häufig die Optimierungen des Compilers unterdrückt werden. Normalerweise wird dies asm volatilemit memoryin der Clobber-Liste verwendet, aber manchmal wird nur asm volatileoder nur ein einfacher asmClobber-Speicher angezeigt . Welche Auswirkungen haben diese unterschiedlichen Anweisungen auf die Codegenerierung (insbesondere in GCC, da es …
74 c  gcc  inline-assembly 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.