{"id":18409346,"url":"https://github.com/sdtelectronics/cling-build","last_synced_at":"2025-04-12T21:51:54.063Z","repository":{"id":105560854,"uuid":"339773436","full_name":"SdtElectronics/cling-build","owner":"SdtElectronics","description":"Build Script and Pre-built Binaries (for ARM) of Cling The C++ Interpreter","archived":false,"fork":false,"pushed_at":"2021-03-09T14:48:10.000Z","size":3,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-16T05:16:16.303Z","etag":null,"topics":["arm","cling","cpp","interpreter","repl"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SdtElectronics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-17T15:47:28.000Z","updated_at":"2023-08-05T03:33:11.000Z","dependencies_parsed_at":"2024-03-25T07:32:23.806Z","dependency_job_id":null,"html_url":"https://github.com/SdtElectronics/cling-build","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SdtElectronics%2Fcling-build","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SdtElectronics%2Fcling-build/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SdtElectronics%2Fcling-build/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SdtElectronics%2Fcling-build/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SdtElectronics","download_url":"https://codeload.github.com/SdtElectronics/cling-build/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248637832,"owners_count":21137538,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arm","cling","cpp","interpreter","repl"],"created_at":"2024-11-06T03:24:46.900Z","updated_at":"2025-04-12T21:51:54.038Z","avatar_url":"https://github.com/SdtElectronics.png","language":"Shell","readme":"# cling-build\nThis repository contains build script for the C++ interpreter cling and publishes pre-built binaries of it.\n\n## What Is Cling\n[Cling](https://root.cern/cling/) is an incredible C++ interpreter ideal for fast prototyping. It is a part of [CERN Root Data Analysis Framework](https://root.cern/) project, which provides pre-built binaries [here](https://root.cern/download/cling/) but only for X86/64 machines. This repository provides binaries for ARM-based platforms built with chroot environment in [release](https://github.com/SdtElectronics/cling-build/releases). You can also clone the script and build it yourself.\n\n## Usage \nDownload release tarball and extract or clone build script and run. The cling executable will be at `release/bin/cling`. For more usage of the interpreter, run command `.help` in the prompt.\n\n## Notes\n* ### Build prerequisite:\n\tlibxml2 cmake git python2 libffi (libffi-dev on Debian-based distros)\n\n* ### Hardware to Run Manual build:\n\tLLVM is known for the extensive computing resources it takes to build it, and if you are working upon a QEMU, the cost will become even higher. It took about 5 hours and a half to build on my machine with a i5-8300h processor, enabling `-j4` for `make`. The reason for not enabling `-j8` is the spacial cost of building is high as well, which is prone to exhaust the memory with lots of threads enabled. Notice that the script enables `nproc` threads by default, and you may wish to pass an argument to limit it, e.g. `./build.sh 4`.\n\n## Known Issues\nIt seems that cling would print characters not compatible with a serial console. In case you find problem using it on a device connected via a serial port, try out command below which executes cling within a wrapper:\n\n```script -qc ./cling | cat```\n\n## Credits\nThe build script is a modification based on [PKGBUILD of cling package in AUR by archibald869](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=cling) and [cling-all-in-one by Axel Naumann](https://github.com/Axel-Naumann/cling-all-in-one/blob/master/clone.sh).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdtelectronics%2Fcling-build","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdtelectronics%2Fcling-build","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdtelectronics%2Fcling-build/lists"}