瀏覽代碼

Update README.md

gingerBill 6 年之前
父節點
當前提交
cc14180e9d
共有 3 個文件被更改,包括 76 次插入17 次删除
  1. 46 17
      README.md
  2. 30 0
      bin/README.md
  3. 0 0
      shared/.gitkeep

+ 46 - 17
README.md

@@ -51,27 +51,39 @@ main :: proc() {
 }
 }
 
 
 ```
 ```
-
-## Demonstrations:
-* First Talk & Demo
-	- [Talk](https://youtu.be/TMCkT-uASaE?t=338)
-	- [Demo](https://youtu.be/TMCkT-uASaE?t=1800)
-	- [Q&A](https://youtu.be/TMCkT-uASaE?t=5749)
-* [Composition & Refactorability](https://www.youtube.com/watch?v=n1wemZfcbXM)
-* [Introspection, Modules, and Record Layout](https://www.youtube.com/watch?v=UFq8rhWhx4s)
-* [push_allocator & Minimal Dependency Building](https://www.youtube.com/watch?v=f_LGVOAMb78)
-* [when, for & procedure overloading](https://www.youtube.com/watch?v=OzeOekzyZK8)
-* [Context Types, Unexported Entities, Labelled Branches](https://www.youtube.com/watch?v=CkHVwT1Qk-g)
-* [Bit Fields, i128 & u128, Syntax Changes](https://www.youtube.com/watch?v=NlTutcLyF64)
-* [Default and Named Arguments; Explicit Parametric Polymorphism](https://www.youtube.com/watch?v=-XQZE6S6zUU)
-* [Loadsachanges](https://www.youtube.com/watch?v=ar0vFMoMtrI)
-* [Packages, Bit Sets, cstring](https://youtu.be/b8bJbjiXZrQ)
-	- [Q&A](https://youtu.be/5jmxyIfyyTk)
-
 ## Documentation
 ## Documentation
 * [Tutorial](https://odin.handmade.network/wiki/3329-odin_tutorial)
 * [Tutorial](https://odin.handmade.network/wiki/3329-odin_tutorial)
 * [Frequently Asked Questions](https://github.com/odin-lang/Odin/wiki/Frequently-Asked-Questions-(FAQ))
 * [Frequently Asked Questions](https://github.com/odin-lang/Odin/wiki/Frequently-Asked-Questions-(FAQ))
 
 
+## Setup
+
+Odin only supports x86-64 at the moment (64-bit), relies on LLVM for code generation and an external linker.
+
+In addition, the following platform-specific steps are necessary:
+
+- Windows
+    * Have Visual Studio installed (MSVC 2010 or later, for the linker)
+    * Have a copy of `opt.exe` and `llc.exe` in `Odin/bin`. Pre-built Windows binaries can be found [here](https://github.com/odin-lang/Odin/releases/tag/llvm-windows) and *must* be explicitly copied
+    * Open a valid command prompt:
+        * **Basic:** run the `x64 Native Tools Command Prompt for VS2017` shortcut bundled with VS 2017, or
+        * **Advanced:** run `vcvarsall.bat x64` from a blank `cmd` session
+
+- MacOS
+    * Have LLVM explicitly installed (`brew install llvm`)
+    * Have XCode installed (version X.X or later, for linking)
+    * Make sure the LLVM binaries and the linker are added to your `$PATH` environmental variable
+
+- GNU/Linux
+    * Have LLVM installed (opt/llc)
+    * Have Clang installed (version X.X or later, for linking)
+    * Make sure the LLVM binaries and the linker are added to your `$PATH` environmental variable
+
+Then build the compiler by calling `build.bat` (Windows) or `make` (Linux/MacOS). This will automatically run the demo program if successful.
+
+**Notes for Linux:**: The compiler currently relies on the `core` and `shared` library collection being relative to the compiler executable. Installing the compiler in the usual sense (to `/usr/local/bin` or similar) is therefore not as straight forward as you need to make sure the mentioned libraries are available. As a result, it is recommended to simply explicitly invoke the compiler with `/path/to/odin` in your preferred build system, or add `/path/to/odin` to `$PATH`.
+
+Please read the [Getting Started Guide](https://github.com/odin-lang/Odin/wiki#getting-started-with-odin) for more information.
+
 ## Requirements to build and run
 ## Requirements to build and run
 
 
 Please read the [Getting Started Guide](https://github.com/odin-lang/Odin/wiki#getting-started-with-odin).
 Please read the [Getting Started Guide](https://github.com/odin-lang/Odin/wiki#getting-started-with-odin).
@@ -98,3 +110,20 @@ Please read the [Getting Started Guide](https://github.com/odin-lang/Odin/wiki#g
 
 
 * This is still highly in development and the language's design is quite volatile.
 * This is still highly in development and the language's design is quite volatile.
 * Syntax is not fixed.
 * Syntax is not fixed.
+
+## Demonstrations:
+* First Talk & Demo
+	- [Talk](https://youtu.be/TMCkT-uASaE?t=338)
+	- [Demo](https://youtu.be/TMCkT-uASaE?t=1800)
+	- [Q&A](https://youtu.be/TMCkT-uASaE?t=5749)
+* [Composition & Refactorability](https://www.youtube.com/watch?v=n1wemZfcbXM)
+* [Introspection, Modules, and Record Layout](https://www.youtube.com/watch?v=UFq8rhWhx4s)
+* [push_allocator & Minimal Dependency Building](https://www.youtube.com/watch?v=f_LGVOAMb78)
+* [when, for & procedure overloading](https://www.youtube.com/watch?v=OzeOekzyZK8)
+* [Context Types, Unexported Entities, Labelled Branches](https://www.youtube.com/watch?v=CkHVwT1Qk-g)
+* [Bit Fields, i128 & u128, Syntax Changes](https://www.youtube.com/watch?v=NlTutcLyF64)
+* [Default and Named Arguments; Explicit Parametric Polymorphism](https://www.youtube.com/watch?v=-XQZE6S6zUU)
+* [Loadsachanges](https://www.youtube.com/watch?v=ar0vFMoMtrI)
+* [Packages, Bit Sets, cstring](https://youtu.be/b8bJbjiXZrQ)
+	- [Q&A](https://youtu.be/5jmxyIfyyTk)
+

+ 30 - 0
bin/README.md

@@ -0,0 +1,30 @@
+# The Odin Programming Language
+
+## Setup
+
+Odin only supports x86-64 at the moment (64-bit), relies on LLVM for code generation and an external linker.
+
+In addition, the following platform-specific steps are necessary:
+
+- Windows
+    * Have Visual Studio installed (MSVC 2010 or later, for the linker)
+    * Have a copy of `opt.exe` and `llc.exe` in `Odin/bin`. Pre-built Windows binaries can be found [here](https://github.com/odin-lang/Odin/releases/tag/llvm-windows) and *must* be explicitly copied
+    * Open a valid command prompt:
+        * **Basic:** run the `x64 Native Tools Command Prompt for VS2017` shortcut bundled with VS 2017, or
+        * **Advanced:** run `vcvarsall.bat x64` from a blank `cmd` session
+
+- MacOS
+    * Have LLVM explicitly installed (`brew install llvm`)
+    * Have XCode installed (version X.X or later, for linking)
+    * Make sure the LLVM binaries and the linker are added to your `$PATH` environmental variable
+
+- GNU/Linux
+    * Have LLVM installed (opt/llc)
+    * Have Clang installed (version X.X or later, for linking)
+    * Make sure the LLVM binaries and the linker are added to your `$PATH` environmental variable
+
+Then build the compiler by calling `build.bat` (Windows) or `make` (Linux/MacOS). This will automatically run the demo program if successful.
+
+**Notes for Linux:**: The compiler currently relies on the `core` and `shared` library collection being relative to the compiler executable. Installing the compiler in the usual sense (to `/usr/local/bin` or similar) is therefore not as straight forward as you need to make sure the mentioned libraries are available. As a result, it is recommended to simply explicitly invoke the compiler with `/path/to/odin` in your preferred build system, or add `/path/to/odin` to `$PATH`.
+
+Please read the [Getting Started Guide](https://github.com/odin-lang/Odin/wiki#getting-started-with-odin) for more information.

+ 0 - 0
shared/.gitkeep