{"id":17799486,"url":"https://github.com/run4flat/tinycc","last_synced_at":"2025-03-17T05:32:41.930Z","repository":{"id":11294847,"uuid":"13708123","full_name":"run4flat/tinycc","owner":"run4flat","description":"My fork of Fabrice Bellard's Tiny C Compiler","archived":false,"fork":false,"pushed_at":"2018-12-04T15:05:03.000Z","size":5109,"stargazers_count":30,"open_issues_count":3,"forks_count":14,"subscribers_count":7,"default_branch":"mobx","last_synced_at":"2025-03-16T10:07:59.766Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/run4flat.png","metadata":{"files":{"readme":"README","changelog":"Changelog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-10-19T20:21:36.000Z","updated_at":"2025-02-28T15:48:00.000Z","dependencies_parsed_at":"2022-09-08T22:00:47.634Z","dependency_job_id":null,"html_url":"https://github.com/run4flat/tinycc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/run4flat%2Ftinycc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/run4flat%2Ftinycc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/run4flat%2Ftinycc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/run4flat%2Ftinycc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/run4flat","download_url":"https://codeload.github.com/run4flat/tinycc/tar.gz/refs/heads/mobx","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243981536,"owners_count":20378590,"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":[],"created_at":"2024-10-27T12:07:26.683Z","updated_at":"2025-03-17T05:32:39.862Z","avatar_url":"https://github.com/run4flat.png","language":"C","readme":"Tiny C Compiler - C Scripting Everywhere - The Smallest ANSI C compiler\n-----------------------------------------------------------------------\n\nFeatures:\n--------\n\n- SMALL! You can compile and execute C code everywhere, for example on\n  rescue disks.\n\n- FAST! tcc generates optimized x86 code. No byte code\n  overhead. Compile, assemble and link about 7 times faster than 'gcc\n  -O0'.\n\n- UNLIMITED! Any C dynamic library can be used directly. TCC is\n  heading torward full ISOC99 compliance. TCC can of course compile\n  itself.\n\n- SAFE! tcc includes an optional memory and bound checker. Bound\n  checked code can be mixed freely with standard code.\n\n- Compile and execute C source directly. No linking or assembly\n  necessary. Full C preprocessor included. \n\n- C script supported : just add '#!/usr/local/bin/tcc -run' at the first\n  line of your C source, and execute it directly from the command\n  line.\n\nDocumentation:\n-------------\n\n1) Installation on a i386/x86_64/arm Linux/OSX/FreeBSD host (for Windows read tcc-win32.txt)\n\nNote: For OSX and FreeBSD, gmake should be used instead of make.\n\n   ./configure\n   make\n   make test\n   make install\n\nAlternatively, out-of-tree builds are supported: you may use different\ndirectories to hold build objects, kept separate from your source tree:\n\n   mkdir _build\n   cd _build\n   ../configure\n   make\n   make test\n   make install\n\nTexi2html must be installed to compile the doc. \nBy default, tcc is installed in /usr/local/bin.\n./configure --help  shows configuration options.\n\n\n2) Introduction\n\nWe assume here that you know ANSI C. Look at the example ex1.c to know\nwhat the programs look like.\n\nThe include file \u003ctcclib.h\u003e can be used if you want a small basic libc\ninclude support (especially useful for floppy disks). Of course, you\ncan also use standard headers, although they are slower to compile.\n\nYou can begin your C script with '#!/usr/local/bin/tcc -run' on the first\nline and set its execute bits (chmod a+x your_script). Then, you can\nlaunch the C code as a shell or perl script :-) The command line\narguments are put in 'argc' and 'argv' of the main functions, as in\nANSI C.\n\n3) Examples\n\nex1.c: simplest example (hello world). Can also be launched directly\nas a script: './ex1.c'.\n\nex2.c: more complicated example: find a number with the four\noperations given a list of numbers (benchmark).\n\nex3.c: compute fibonacci numbers (benchmark).\n\nex4.c: more complicated: X11 program. Very complicated test in fact\nbecause standard headers are being used ! As for ex1.c, can also be launched\ndirectly as a script: './ex4.c'.\n\nex5.c: 'hello world' with standard glibc headers.\n\ntcc.c: TCC can of course compile itself. Used to check the code\ngenerator.\n\ntcctest.c: auto test for TCC which tests many subtle possible bugs. Used\nwhen doing 'make test'.\n\n4) Full Documentation\n\nPlease read tcc-doc.html to have all the features of TCC.\n\nAdditional information is available for the Windows port in tcc-win32.txt.\n\nLicense:\n-------\n\nTCC is distributed under the GNU Lesser General Public License (see\nCOPYING file).\n\nFabrice Bellard.\n","funding_links":[],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frun4flat%2Ftinycc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frun4flat%2Ftinycc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frun4flat%2Ftinycc/lists"}