간단하고 안정적이며 효율적인 소프트웨어를 만들기 위한 오픈소스 프로그래밍 언어 Go입니다.
jart/cosmopolitan
Linux, macOS, Windows, BSD 및 BIOS에서 네이티브로 실행되는 단일 실행 파일을 빌드하는 C 표준 라이브러리와 툴체인입니다.
- 스타
- 21,432
- 포크
- 784
- 열린 이슈
- 226
- 마지막 커밋
- 17일 전
어떤 프로젝트인가요?
Cosmopolitan Libc를 사용하면 C 및 C++ 프로그램을 한 번 빌드해 Linux, macOS, Windows, FreeBSD, OpenBSD, NetBSD 및 BIOS에서 실행할 수 있습니다. 기본 GCC와 Clang의 설정을 바꿔 Actually Portable Executable(APE)이라는 폴리글랏 실행 파일 형식을 생성하므로 인터프리터나 가상 머신이 필요하지 않습니다.
이 프로젝트는 일반 C 컴파일러처럼 사용할 수 있고 기존 autotools 기반 오픈소스 프로젝트를 빌드하는 데도 쓸 수 있는 cosmocc 컴파일러 배포판을 제공합니다. 런타임에는 시스템 호출과 함수 호출을 디버깅할 수 있는 --strace 및 --ftrace 같은 추적 옵션이 내장되어 있습니다.
저장소에는 tiny 및 tinylinux처럼 바이너리 크기를 줄이는 빌드 모드를 지원하는 소스 빌드 시스템과 Linux 및 WSL에서 APE를 로드하기 위한 플랫폼 설정 안내도 포함되어 있습니다.
핵심 기능
- 01여러 운영체제에서 실행되는 단일 실행 파일로 C 및 C++ 프로그램을 빌드합니다.
- 02cosmocc 배포판을 통해 기본 GCC 및 Clang 툴체인과 함께 사용할 수 있습니다.
- 03디버깅을 위한 --strace 및 --ftrace 런타임 옵션을 제공합니다.
- 04바이너리 크기를 줄이는 tiny 및 tinylinux 등의 빌드 모드를 제공합니다.
- 05autotools 기반 오픈소스 프로젝트를 빌드할 수 있습니다.
활용 사례
- Linux, macOS 및 Windows에서 작동하는 단일 파일로 명령줄 도구를 배포합니다.
- 런타임이 설치되지 않은 시스템을 위한 이식성 높은 유틸리티나 서버를 패키징합니다.
- 플랫폼별 빌드 없이 기존 C 프로젝트를 여러 운영체제용으로 빌드합니다.
빠른 시작
- 1
cosmocc 컴파일러 릴리스를 다운로드합니다
wget https://cosmo.zip/pub/cosmocc/cosmocc.zip - 2
컴파일러 아카이브의 압축을 풉니다
unzip cosmocc.zip - 3
Hello World 프로그램을 컴파일합니다
cosmocc -o hello hello.c - 4
생성된 실행 파일을 실행합니다
./hello
사용 전 알아둘 점
- 일부 Linux 배포판에서는 binfmt_misc에 APE 로더를 등록하기 전까지 APE 프로그램이 실행되지 않습니다.
- WSL에서 APE 프로그램을 실행하는 것은 WSLInterop를 비활성화하지 않으면 안전하지 않습니다. Windows 7과 Vista에서는 별도의 커뮤니티 브랜치가 필요합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- cosmopolitan은(는) 무엇인가요?
- Linux, macOS, Windows, BSD 및 BIOS에서 네이티브로 실행되는 단일 실행 파일을 빌드하는 C 표준 라이브러리와 툴체인입니다. Cosmopolitan Libc를 사용하면 C 및 C++ 프로그램을 한 번 빌드해 Linux, macOS, Windows, FreeBSD, OpenBSD, NetBSD 및 BIOS에서 실행할 수 있습니다. 기본 GCC와 Clang의 설정을 바꿔 Actually Portable Executable(APE)이라는 폴리글랏 실행 파일 형식을 생성하므로 인터프리터나 가상 머신이 필요하지 않습니다.
- cosmopolitan은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- cosmopolitan은(는) ISC 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- cosmopolitan은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. cosmopolitan의 마지막 커밋은 2026년 10월 20일입니다.
- cosmopolitan은(는) 어디에 사용할 수 있나요?
- Linux, macOS 및 Windows에서 작동하는 단일 파일로 명령줄 도구를 배포합니다. 런타임이 설치되지 않은 시스템을 위한 이식성 높은 유틸리티나 서버를 패키징합니다. 플랫폼별 빌드 없이 기존 C 프로젝트를 여러 운영체제용으로 빌드합니다.
- cosmopolitan는 어떻게 설치하나요?
- cosmocc 컴파일러 릴리스를 다운로드합니다: wget https://cosmo.zip/pub/cosmocc/cosmocc.zip 컴파일러 아카이브의 압축을 풉니다: unzip cosmocc.zip Hello World 프로그램을 컴파일합니다: cosmocc -o hello hello.c 생성된 실행 파일을 실행합니다: ./hello
- cosmopolitan은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/jart/cosmopolitan
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
LLVM 코어, Clang C/C++ 프런트엔드, libc++ 및 LLD 링커를 포함하는 모듈형 컴파일러·툴체인 기술 모음입니다.
프로세스, 포트, 컨테이너 또는 파일의 시작 경로를 추적하는 CLI 및 TUI입니다.
Linux, macOS, Windows에서 원하는 확장 기능을 포함한 독립 실행형 무의존성 PHP 바이너리를 빌드하는 CLI 도구입니다.
AI가 생성하고 사람이 검토하는 코드를 위해 설계된 실험적 컴파일 언어로, 명시적인 문법과 가비지 컬렉터가 없으며 C로 컴파일됩니다.
OS 이미지를 자동으로 다운로드하고 최적화된 Windows, macOS, Linux VM을 실행하는 QEMU 래퍼