GNU/Linux >> Tutoriels Linux >  >> Linux

bash :./helloworld_s :aucun fichier ou répertoire de ce type. Le dossier est clairement là

Comme expliqué dans le bogue redhat #868662 , la méthode recommandée pour créer un lien est de laisser gcc appeler ld comme ci-dessous ;

> gcc -nostartfiles helloworld-lib.o -o helloworld_s -lc

Ce qui se traduit par un lien correct ;

> ldd helloworld_s
        linux-vdso.so.1 =>  (0x00007ffd283bf000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fd011b62000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fd011f2f000)

Et l'exécution se passe bien ;

> ./helloworld_s
Hello, world!

Pourquoi ld est-il lié à /lib/ld64.so.1 qui n'existe pas ?
Parce que c'est la configuration par défaut pour un système générique, pas seulement Linux.


Linux
  1. Comment réparer '/usr/bin/dirmngr' :aucun fichier ou répertoire de ce type

  2. Erreur avec gradlew :/usr/bin/env :bash :aucun fichier ou répertoire de ce type

  3. -bash :/usr/bin/virtualenvwrapper.sh :aucun fichier ou répertoire de ce type

  4. source conda désactiver :bash :désactiver :aucun fichier ou répertoire de ce type

  5. chroot échoue - impossible d'exécuter la commande `/bin/bash' :aucun fichier ou répertoire de ce type

Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?

Bash =~ Regex et Https://regex101.com/?

Kubuntu affiche une erreur lors de la connexion (file:///usr/share/sddm//themes/breeze/main.qml:no Such File Or Directory) ?

Comprendre les fichiers /proc/mounts, /etc/mtab et /proc/partitions

unix:///var/run/supervisor.sock aucun fichier de ce type

/dev/sdb :aucun fichier ou répertoire de ce type (mais /dev/sdb1, etc. existe)