언어: English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Deutsch | Español | Italiano | Русский | العربية
NeverC의 크로스 플랫폼 컴파일 기능을 보여주는 빌드 가능한 예제. 모두 macOS / Linux에서 크로스 컴파일 가능 — Windows 빌드 환경 불필요.
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| 권위형 게임 서버 | 크로스 플랫폼 게임 백엔드 | 고정 60 Hz tick, TCP 세션, UDP/QUIC 입력, 재생 방지 |
| 안티치트 수집기 | 강화된 텔레메트리 수집 | mTLS, 스트리밍 NRPC, HMAC 텔레메트리, 경계가 있는 감사 파이프라인 |
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| Windows 커널 드라이버 | 최소 WDM 커널 드라이버 | x64(기본)와 ARM64용 .sys 크로스 컴파일, 자동 LTO, 내장 링커 |
| Windows 드라이버 + CET | Intel CET 섀도 스택 커널 드라이버 | CET 호환 커널 코드(x64 전용), /guard:ehcont |
| Windows 드라이버 + 부동 소수점 | 부동 소수점/SIMD 커널 드라이버 | x64와 ARM64에서 커널 모드 안전 부동 소수점 |
| Windows Ring3 EXE | 사용자 모드 콘솔 앱 | GetSystemInfo, 프로세스 열거, VirtualAlloc |
| Windows Ring3 DLL | 사용자 모드 DLL | ReadProcessMemory, VirtualAllocEx, 모듈 열거 |
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| Linux Hello World | 최소한의 C 프로그램 | macOS/Windows에서 크로스 컴파일 |
| Linux POSIX | POSIX 시스템 프로그래밍 | pthreads, mmap, pipe, 시그널 |
| Linux 정적 | 완전 정적 바이너리 | -static 링크 |
| Linux 네트워크 | TCP 소켓 데모 | 클라이언트/서버 |
| Linux 수학 + zlib | 수학 + 압축 | 삼각 함수, zlib, CRC32 |
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| macOS 애플리케이션 | 네이티브 Mach-O 실행 파일 | sysctl, uname, Mach host_info/task_info, 프로세스 조회 |
| macOS 동적 라이브러리 | 네이티브 .dylib 라이브러리 |
Mach vm_read/vm_write, vm_alloc/vm_dealloc, task_info, XOR |
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| Android ELF | 루팅 기기용 네이티브 ARM64 바이너리 | Android 크로스 컴파일, dlopen/liblog, /proc 정보, root 확인 |
| Android 공유 라이브러리 | 네이티브 ARM64 .so 라이브러리 |
공유 라이브러리, mmap RWX, XOR 암호화 |
커널 소스 트리 불필요 — NeverC는 번들된 최소 런타임으로 컴파일합니다. 단일 소스로 GKI 5.10–6.12 지원.
| 예제 | 설명 | 주요 기능 |
|---|---|---|
| 커널 Hello | 최소 .ko 모듈 |
kprobe 기반 kallsyms 부트스트랩, 최소 insmod 검증 |
| 커널 드라이버 템플릿 | 동적 심볼 해석 템플릿 | kallsyms_lookup_name, GKI 안정 ABI, 5.10–6.12 |
| 커널 인라인 훅 | do_faccessat 인라인 훅 |
BTI/PAC 안전 패치, 컨텍스트 훅 모드, PC 상대 재배치 |
| 커널 Syscall 훅 | syscall 테이블 / inline / context interpose | sys_call_table 교체, 인라인 훅, 컨텍스트 훅 |
| 커널 저가시성 | 모듈 가시성 관리 | list/sysfs/proc 가시성, 자격 증명 래퍼, SELinux 강제 상태 |
| 커널 Full SDK | 완전 SDK 통합 | Netlink IPC, interpose, 자격 증명 래퍼, 모듈 가시성, SELinux 정책 제어, VMA, 파일 I/O |
| 커널 Chardev | 문자 장치 + ioctl | misc_register, ioctl 디스패치, /proc seq_file |
| 커널 Netlink | 양방향 netlink IPC | PING/VERSION/ECHO 명령, nvk_nl_open/nvk_nl_reply |
| 커널 Probe | 임의 명령어 프로브 | neverc_krt_probe_register, 전체 레지스터 컨텍스트, 우선순위 체이닝, 건너뛰기/리다이렉트 |
| 커널 다중 파일 모듈 | 다중 파일 커널 모듈 | NEVERC_KRT_BOOTSTRAP() 한 번만, weak_odr 공유 상태, init/interpose/helper 분리 |
모든 예제는 동일한 패턴을 따릅니다:
cd examples/example-name
neverc makeMakefile 드라이버 자체는 neverc build / make →.
필요하면 컴파일러 경로를 재정의합니다:
neverc make NEVERC=/path/to/nevercWindows 드라이버 예제는 ARCH로 아키텍처를 선택합니다(기본값 x64). CET 예제는
x64 전용입니다 — CET은 x86 기능입니다:
neverc make ARCH=x64 # Build for x64 (default)
neverc make ARCH=arm64 # Build for ARM64
neverc make all-arch # Build every architecture the example supports
neverc make TESTSIGN=1 # Attach an Authenticode test signatureLinux 예제는 아키텍처 선택을 지원합니다:
neverc make TARGET=aarch64-linux-gnu # Build for ARM64
neverc make TARGET=x86_64-linux-gnu # Build for x86_64 (default)macOS 예제는 아키텍처 선택을 지원합니다:
neverc make TARGET=arm64-apple-macos # Build for Apple Silicon (default)
neverc make TARGET=x86_64-apple-macos # Build for IntelAndroid 예제는 기본적으로 ARM64를 대상으로 합니다:
cd examples/android-elf
neverc make # Build
neverc make run # Build + push to device + run via adb- 단일 툴체인: NeverC는 전처리, 컴파일, 최적화(자동 LTO), 링크를 한 번의 호출로 처리합니다
- 번들 SDK: Windows SDK/WDK, Linux sysroot(Ubuntu 22.04), macOS sysroot(macOS 14), Android sysroot(NDK r26c, API 21+)가
runtime/에 번들되어 있습니다 — 외부 의존성 제로 - 호스트 독립적: macOS(arm64/x86_64), Linux(x86_64/aarch64), Windows에서 동일한 명령으로 빌드
- 멀티 타깃: 임의의 호스트에서 Windows PE(
.sys/.exe/.dll), Linux ELF, macOS Mach-O(.dylib), Android ELF로 크로스 컴파일 - 디버그 지원:
-g를 전달하면 DWARF 디버그 정보 포함;llvm-dwarfdump로 검사