Articles of gcc

Compilation du programme pour l’ancien kernel

J’ai compilé et lié statiquement un programme sur une machine Linux à jour, et je l’ai exécuté sur un autre Linux vieux de 9 ans. Cela m’a donné une erreur “FATAL: kernel too old” et quitter. Plus précisément, le nouveau est Fedora 18 (gcc 4.7.2, glibc 2.16, kernel 3.7.2) et l’ancien est RHEL4.8 (glibc 2.3.4, […]

Comstackr pour CentOS sur Ubuntu

Puis-je installer une ancienne version de gcc / g ++ (4.1.3) sur la dernière version d’Ubuntu (fournie avec 4.4.3) et l’utiliser pour comstackr un .so qui devrait s’exécuter sur CentOS? Le binary compilé avec la version Ubuntu de gcc ne parvient pas à se charger sur CentOS en raison d’importations manquantes (GLIB_2_11, …). J’ai besoin […]

pthread_create (): Qu’est-ce que la priorité par défaut et la politique de découpage

La page de manuel HP ( lien ) indique “Par défaut, la stratégie de planification et la priorité du nouveau thread sont héritées du thread de création – c’est-à-dire que la routine pthread_create (3) ignore par défaut la stratégie de planification et la priorité définies dans l’object d’atsortingbuts de thread spécifié. un thread qui est […]

Sublime texte linux gcc construit pour des programmes simples

Je veux construire des programmes dans la commande de construction intégrée du texte sublime 2 J’ai créé un fichier gcc.sublime-build avec { “cmd” : [“gcc”, “$file_name”, “-o”, “${file_base_name}”], “selector” : “source.c”, “shell”:true, “working_dir” : “$file_path” } mais tout ce que je reçois est une erreur en disant gcc: erreur fatale: aucune compilation de fichiers d’entrée […]

Linux – comment changer les informations des processus fourchus en C

Le titre peut sembler un peu étrange, avec ps aux je vois ceci: root 20953 0.0 0.0 9528 1280 ? Ss Apr28 0:07 sendmail: accepting connections où “accepter les connexions” est quelque chose comme un titre pour le processus sendmail. Ce n’est pas un argument car cat /proc/20953/cmdline renvoie sendmail: accepting connections (espace au lieu […]

Dans quels segments de mémoire les arguments de ligne de commande sont-ils stockés?

Les arguments en ligne de commande argc , arv[] , utilisés avec la fonction main en C, où sont-ils stockés en mémoire? La zone de stockage que je recherche pour cette question doit être tas, segment de données, stack ou autre.

les sous-routines d’assemblage sont appelées deux fois sans même être appelées de main

J’essaie de définir des sous-routines qui ont des appels à imprimer en eux. Un exemple très sortingvial est le suivant: extern printf LINUX equ 80H EXIT equ 60 section .data intfmt: db “%ld”, 10, 0 segment .text global main main: call os_return ; return to operating system os_return: mov rax, EXIT ; Linux system call […]

Comment comstackr un monde hello de 32 bits sur alpine?

Étant donné un code de bonjour simple: #include int main(void){ puts(“hello”); return 0; } Sur une installation Linux Linux 64 bits, j’ai essayé de le comstackr en 64 bits et en 32 bits. Le premier fonctionne correctement, mais le second manque les bibliothèques 32 bits: ~ # gcc -Wall hello.c ~ # gcc -Wall -m32 […]

liste d’en-tête par défaut de g ++

En effectuant une compilation avec cross g ++ dans une machine Linux (lubuntu 11.10) en mode verbeux, je peux voir la liste des répertoires d’en-tête include par défaut: #include search starts here: /opt/eldk-4.2/usr/bin/../lib/gcc/powerpc-linux/4.2.2/include /opt/eldk-4.2/ppc_4xx/usr/include/c++/4.2.2/opt/eldk-4.2/ppc_4xx/usr/include/c++/4.2.2/powerpc-linux /opt/eldk-4.2/ppc_4xx/usr/include/c++/4.2.2/backward /opt/eldk-4.2/usr/../ppc_4xx/usr/include En exécutant le même binary g ++ sur une autre machine Linux (lubuntu 12.10), je reçois une autre liste […]

Comment dire à gcc d’arrêter d’utiliser les fonctions intégrées?

J’utilise ma propre glibc modifiée. J’ai vu dans le code compilé que le compilateur n’utilisait pas beaucoup de fonctions de bibliothèque standard de ma glibc lorsque je me connectais avec lui. Ensuite, je mets le drapeau -fno-builtin . Les choses se sont améliorées et je pouvais voir que de nombreuses fonctions qui n’étaient pas extraites […]