clearer readme
parent
146da105b9
commit
c6a854fac3
39
README.md
39
README.md
|
@ -18,17 +18,42 @@ files in there directly if you don't need the API documentation.
|
||||||
## Building
|
## Building
|
||||||
|
|
||||||
Libostd is built using the supplied C++ build tool. You need to compile the
|
Libostd is built using the supplied C++ build tool. You need to compile the
|
||||||
build tool first using the compiler you will use to build the library itself:
|
build tool first using the compiler you will use to build the library itself.
|
||||||
|
|
||||||
|
On a typical setup, this will involve:
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
c++ build.cc -o build -std=c++1z
|
c++ build.cc -o build -std=c++1z -I. -pthread
|
||||||
|
./build --help
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
On Unix-like systems, the `-pthread` option is necessary. C++17 is required
|
This will typically build using either GCC or Clang with typically libstdc++
|
||||||
to build it just like the library itself. If you're using libc++ and your
|
as a standard library implementation. **Keep in mind that it is you need
|
||||||
version does not supply a stable `std::filesystem` module, you will also
|
at least Clang 4.0 or GCC 7.1 to build.** To switch to libc++:
|
||||||
need to link `-lc++experimental`. If you have the same issue with libstdc++,
|
|
||||||
the necessary linker flag is `-lstdc++fs`.
|
~~~
|
||||||
|
c++ build.cc -o build -std=c++1z -I. -pthread -stdlib=libc++
|
||||||
|
CXXFLAGS="-stdlib=libc++" ./build
|
||||||
|
~~~
|
||||||
|
|
||||||
|
If you get undefined references about filesystem, you will need to add
|
||||||
|
extra linkage.
|
||||||
|
|
||||||
|
For libstdc++:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
c++ build.cc -o build -std=c++1z -I. -pthread -lstdc++fs
|
||||||
|
LDFLAGS="-lstdc++fs" ./build
|
||||||
|
~~~
|
||||||
|
|
||||||
|
For libc++:
|
||||||
|
|
||||||
|
~~~
|
||||||
|
c++ build.cc -o build -std=c++1z -I. -pthread -stdlib=libc++ -lc++experimental
|
||||||
|
CXXFLAGS="-stdlib=libc++" LDFLAGS="-lc++experimental" ./build
|
||||||
|
~~~
|
||||||
|
|
||||||
|
You can skip `-pthread` on Windows.
|
||||||
|
|
||||||
Using the tool should be straightforward. The `./build --help` command lists
|
Using the tool should be straightforward. The `./build --help` command lists
|
||||||
the available options.
|
the available options.
|
||||||
|
|
Loading…
Reference in New Issue