o
odinpkg.dev
packages / library / Odin-VexV5

Odin-VexV5

6477ba9library

Odin on VEX V5 robots NOTE: This is the raw jump table API so it is fairly low level

No license · updated 2 months ago

Odin-VexV5

This project is a custom VEX V5 build system using Odin as the primary language. It links directly against a manually extracted VEX SDK runtime and toolchain libraries via hardlinks. This only currently implments the low level jump table api

If this project is something that people actualy use or want to contribute to I am happy to help writing the higher level API

Directory Overview

Odin-VexV5
├── build.bat         (build script)
├── libc.a            (hardlinked from VEX SDK)
├── libgcc.a          (hardlinked from VEX SDK)
├── libm.a            (hardlinked from VEX SDK)
├── libv5rt.a         (hardlinked from VEX SDK runtime)
├── link.ld           (VEX linker script)
├── ols.json
├── README.md
├── v5.odin           (Odin entry + bindings)
└── wrapper.c         (VEX-compatible entry point)

Library Source Requirement

All required libraries (libc.a, libgcc.a, libm.a, libv5rt.a) are not provided by this repository. They must be manually located inside the installed VEXcode V5 SDK and hardlinked into this project directory.

Typical SDK location (Windows):

C:\Program Files\VEX Robotics\VEXcode V5\resources\sdk\vexv5

Creating Hardlinks (Windows)

Run in Administrator Command Prompt:

mklink libc.a "C:\\Program Files\\VEX Robotics\\VEXcodeV5\\resources\\sdk\\vexv5\\gcc\\libs\\libc.a" mklink libgcc.a "C:\\Program Files\\VEX Robotics\\VEXcode V5\\resources\\sdk\\vexv5\\gcc\\libs\\libgcc.a" mklink libm.a "C:\\Program Files\\VEX Robotics\\VEXcode V5\\resources\\sdk\\vexv5\\gcc\\libs\\libm.a" mklink libv5rt.a "C:\\Program Files\\VEX Robotics\\VEXcode V5\\resources\\sdk\\vexv5\\libv5rt.a"

Build Process

just run build.bat