• =?UTF-8?Q?interroger_programmatiquement_le_chemin_de_chargement_dyn?= =

    From Basile Starynkevitch@21:1/5 to All on Fri Jan 26 10:30:02 2024
    Bonjour la liste,

    Pour les systèmes Debian ou proches (par exemple Ubuntu ou Linux Mint)
    comment interroger programmatiquement (dans un shell script ou un
    programme en C) le chemin par défaut du chargeur dynamique ld.so
    (lequel est modifiable par un LD_LIBRARY_PATH explicite éventuel).

    Ca me serait utile pour le moteur d'inférences libre que je développe
    (en GPLv3+) RefPerSys en https://github.com/RefPerSys/RefPerSys/ qui
    génère du code à la volée (génération de code C++ compilé en un greffon puis dlopen-é et dlsym-é, ou de code machine via GNU lightning).

    Actuellement je n'ai que des ordinateurs Debian (ou Ubuntu) en x86-64 à
    ma disposition.

    Mais j'essaie de coder quelque chose qui puisse se porter facilement à
    une autre architecture 64 bits supportant Debian.

    Je n'ai aucun LD_LIBRARY_PATH explicite. Mon /etc/ld.so.conf contient
    (je l'ai ajouté à la main) /usr/local/lib/ après le include /etc/ld.so.conf.d/*.conf


    Car GNU lightning a été compilé à la main donc avec préfixe /usr/local/

    Librement
    --
    Basile Starynkevitch <basile@starynkevitch.net>
    (only mine opinions / les opinions sont miennes uniquement)
    92340 Bourg-la-Reine, France
    web page: starynkevitch.net/Basile/
    See https://github.com/RefPerSys/RefPerSys

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lamourec Alain@21:1/5 to Basile Starynkevitch on Fri Jan 26 19:30:01 2024
    Bonsoir

    peut être à partir de ldd ?


    Basile Starynkevitch <basile@starynkevitch.net> writes:

    Bonjour la liste,

    Pour les systèmes Debian ou proches (par exemple Ubuntu ou Linux
    Mint)
    comment interroger programmatiquement (dans un shell script ou
    un
    programme en C) le chemin par défaut du chargeur dynamique ld.so
    (lequel est modifiable par un LD_LIBRARY_PATH explicite
    éventuel).

    Ca me serait utile pour le moteur d'inférences libre que je
    développe
    (en GPLv3+) RefPerSys en https://github.com/RefPerSys/RefPerSys/
    qui
    génère du code à la volée (génération de code C++ compilé en un greffon puis dlopen-é et dlsym-é, ou de code machine via GNU
    lightning).

    Actuellement je n'ai que des ordinateurs Debian (ou Ubuntu) en
    x86-64
    à ma disposition.

    Mais j'essaie de coder quelque chose qui puisse se porter
    facilement à
    une autre architecture 64 bits supportant Debian.

    Je n'ai aucun LD_LIBRARY_PATH explicite. Mon /etc/ld.so.conf
    contient
    (je l'ai ajouté à la main) /usr/local/lib/ après le include /etc/ld.so.conf.d/*.conf


    Car GNU lightning a été compilé à la main donc avec préfixe
    /usr/local/

    Librement


    --
    Lamourec Alain

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lamourec Alain@21:1/5 to Lamourec Alain on Fri Jan 26 19:40:02 2024
    Non finalement

    un which ld.so

    donne bien /usr/bin/ld.so



    Lamourec Alain <lann@worldonline.fr> writes:

    Bonsoir

    peut être à partir de ldd ?


    Basile Starynkevitch <basile@starynkevitch.net> writes:

    Bonjour la liste,

    Pour les systèmes Debian ou proches (par exemple Ubuntu ou
    Linux
    Mint)
    comment interroger programmatiquement (dans un shell script ou
    un
    programme en C) le chemin par défaut du chargeur dynamique
    ld.so
    (lequel est modifiable par un LD_LIBRARY_PATH explicite
    éventuel).

    Ca me serait utile pour le moteur d'inférences libre que je
    développe
    (en GPLv3+) RefPerSys en
    https://github.com/RefPerSys/RefPerSys/ qui
    génère du code à la volée (génération de code C++ compilé en un
    greffon puis dlopen-é et dlsym-é, ou de code machine via GNU
    lightning).

    Actuellement je n'ai que des ordinateurs Debian (ou Ubuntu) en
    x86-64
    à ma disposition.

    Mais j'essaie de coder quelque chose qui puisse se porter
    facilement
    à
    une autre architecture 64 bits supportant Debian.

    Je n'ai aucun LD_LIBRARY_PATH explicite. Mon /etc/ld.so.conf
    contient
    (je l'ai ajouté à la main) /usr/local/lib/ après le include
    /etc/ld.so.conf.d/*.conf


    Car GNU lightning a été compilé à la main donc avec préfixe
    /usr/local/

    Librement


    --
    Lamourec Alain

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Basile Starynkevitch@21:1/5 to Lamourec Alain on Fri Jan 26 20:40:01 2024
    Je me suis mal exprimé.

    Je cherche pour la phase de compilation (donc dans le GNUmakefile ....)
    le chemin par défaut du chargement dynamique. Celui-ci est passé par l'argument -rpath à la compilation (édition des liens) de l'exécutable.

    Concretement, il contiendrait la valeur par défaut de ce -rpath.

    Librement

    On 1/26/24 19:32, Lamourec Alain wrote:
    Non finalement

    un which ld.so

    donne bien /usr/bin/ld.so



    Lamourec Alain <lann@worldonline.fr> writes:

    Bonsoir

    peut être à partir de ldd ?


    Basile Starynkevitch <basile@starynkevitch.net> writes:

    Bonjour la liste,

    Pour les systèmes Debian ou proches (par exemple Ubuntu ou Linux
    Mint)
    comment interroger programmatiquement (dans un shell script ou un
    programme en C) le chemin par défaut du chargeur dynamique ld.so
    (lequel est modifiable par un LD_LIBRARY_PATH explicite éventuel).

    Ca me serait utile pour le moteur d'inférences libre que je
    développe
    (en GPLv3+) RefPerSys en https://github.com/RefPerSys/RefPerSys/ qui
    génère du code à la volée (génération de code C++ compilé en un
    greffon puis dlopen-é et dlsym-é, ou de code machine via GNU
    lightning).

    Actuellement je n'ai que des ordinateurs Debian (ou Ubuntu) en
    x86-64
    à ma disposition.

    Mais j'essaie de coder quelque chose qui puisse se porter facilement
    à
    une autre architecture 64 bits supportant Debian.

    Je n'ai aucun LD_LIBRARY_PATH explicite. Mon /etc/ld.so.conf
    contient
    (je l'ai ajouté à la main) /usr/local/lib/ après le include
    /etc/ld.so.conf.d/*.conf


    Car GNU lightning a été compilé à la main donc avec préfixe
    /usr/local/

    Librement



    --
    Basile Starynkevitch <basile@starynkevitch.net>
    (only mine opinions / les opinions sont miennes uniquement)
    92340 Bourg-la-Reine, France
    web page: starynkevitch.net/Basile/
    See https://github.com/RefPerSys/RefPerSys

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)