python-sotools


Namepython-sotools JSON
Version 0.1.2 PyPI version JSON
download
home_page
SummaryCollection of dynamic linking tools
upload_time2023-04-07 21:29:44
maintainer
docs_urlNone
author
requires_python>=3.7
licenseBSD-3-Clause
keywords elf linking linux libraries system
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # python-sotools

Collection of tools to debug and diagnose ELF objects dynamic linking.

## Dynamic linker

The module contains methods to mimic the default dynamic linker on Linux. The [`resolve`](https://github.com/spoutn1k/python-sotools/blob/ba7a3bdda288f4edd50133e826144224cc2bf561/sotools/linker.py#L31) method implements all the rules involving the search and selection of a shared object given a shared object name (soname) string.

### Dynamic linker cache

The dynamic linker cache (usually present at `/etc/ld.so.cache`) is a database generated at install time to cache the locations of select shared objects on the system. `python-sotools` supports reading and parsing this file, along with customized search for matches.

### Library set

To simplify the use of the linker, the `LibrarySet` object is a specialization of a python `set` that allows to quickly resolve a dependency tree. It contains `Library` objects and is complete when all dependencies are contained in the set, and allows to verify all the members' required definitions are also present in another set member.

## Scripts

The following scripts are installed automatically when installing `python-sotools`:

### `ldd.py`

Simple re-implementation of ldd with the contents of `python-sotools`. This version does not use the actual linker and can be trusted not to run any code when executed with unknown executables, unlike the original.

### `sowhich`

Which library is resolved ? This command returns the path for the library name given as an argument. That's it.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "python-sotools",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "elf,linking,linux,libraries,system",
    "author": "",
    "author_email": "Jean-Baptiste Skutnik <jb.skutnik@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/0d/b5/7d94b1b31a929c9e946960b3e0d3df718920194f8a60ce665b723725ca12/python-sotools-0.1.2.tar.gz",
    "platform": null,
    "description": "# python-sotools\n\nCollection of tools to debug and diagnose ELF objects dynamic linking.\n\n## Dynamic linker\n\nThe module contains methods to mimic the default dynamic linker on Linux. The [`resolve`](https://github.com/spoutn1k/python-sotools/blob/ba7a3bdda288f4edd50133e826144224cc2bf561/sotools/linker.py#L31) method implements all the rules involving the search and selection of a shared object given a shared object name (soname) string.\n\n### Dynamic linker cache\n\nThe dynamic linker cache (usually present at `/etc/ld.so.cache`) is a database generated at install time to cache the locations of select shared objects on the system. `python-sotools` supports reading and parsing this file, along with customized search for matches.\n\n### Library set\n\nTo simplify the use of the linker, the `LibrarySet` object is a specialization of a python `set` that allows to quickly resolve a dependency tree. It contains `Library` objects and is complete when all dependencies are contained in the set, and allows to verify all the members' required definitions are also present in another set member.\n\n## Scripts\n\nThe following scripts are installed automatically when installing `python-sotools`:\n\n### `ldd.py`\n\nSimple re-implementation of ldd with the contents of `python-sotools`. This version does not use the actual linker and can be trusted not to run any code when executed with unknown executables, unlike the original.\n\n### `sowhich`\n\nWhich library is resolved ? This command returns the path for the library name given as an argument. That's it.\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "Collection of dynamic linking tools",
    "version": "0.1.2",
    "split_keywords": [
        "elf",
        "linking",
        "linux",
        "libraries",
        "system"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bd7f4894051394ab8aaa02dc56ef4226d16bd342b444fd160847caca87018d25",
                "md5": "b4ddb43b8a391370df4aae70f3aeda71",
                "sha256": "67dee69778f7ef366f30eed3dcf8bfbdece3c262893a448e687f37fc110a51b5"
            },
            "downloads": -1,
            "filename": "python_sotools-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b4ddb43b8a391370df4aae70f3aeda71",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 19550,
            "upload_time": "2023-04-07T21:29:43",
            "upload_time_iso_8601": "2023-04-07T21:29:43.174036Z",
            "url": "https://files.pythonhosted.org/packages/bd/7f/4894051394ab8aaa02dc56ef4226d16bd342b444fd160847caca87018d25/python_sotools-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0db57d94b1b31a929c9e946960b3e0d3df718920194f8a60ce665b723725ca12",
                "md5": "e76adc8c14b2698239c823fbf0704621",
                "sha256": "cf52b6ab24e7a3bcfa441b150885c4b6143795d8d1cf54936315ae0e3e70f9e9"
            },
            "downloads": -1,
            "filename": "python-sotools-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "e76adc8c14b2698239c823fbf0704621",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 45024,
            "upload_time": "2023-04-07T21:29:44",
            "upload_time_iso_8601": "2023-04-07T21:29:44.876593Z",
            "url": "https://files.pythonhosted.org/packages/0d/b5/7d94b1b31a929c9e946960b3e0d3df718920194f8a60ce665b723725ca12/python-sotools-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-07 21:29:44",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "python-sotools"
}
        
Elapsed time: 0.08417s