Skip to content

Commit 676f762

Browse files
committed
Updating readme's.
1 parent 3630ed9 commit 676f762

File tree

4 files changed

+103
-143
lines changed

4 files changed

+103
-143
lines changed

BUILD.md

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,25 @@
66
* [BUILD_ANDROID.md](BUILD_ANDROID.md) - additional instructions for Android
77

88
### Dependencies
9-
9+
- [git](https://git-scm.com/downloads): >= 1.6
1010
- [cmake](https://cmake.org/download/): 3.9
11-
- [Qt](https://www.qt.io/download-open-source): 5.12.3
1211
- [Python](https://www.python.org/downloads/): 3.6 or higher
1312

1413
### CMake External Project Dependencies
1514

1615
These dependencies need not be installed manually. They are automatically downloaded on the platforms where they are required.
17-
- [Bullet Physics Engine](https://github.com/bulletphysics/bullet3/releases): 2.83
18-
- [glm](https://glm.g-truc.net/0.9.8/index.html): 0.9.8
19-
- [Oculus SDK](https://developer.oculus.com/downloads/): 1.11 (Win32) / 0.5 (Mac)
20-
- [OpenVR](https://github.com/ValveSoftware/openvr): 1.0.6 (Win32 only)
21-
- [Polyvox](http://www.volumesoffun.com/): 0.2.1
22-
- [QuaZip](https://sourceforge.net/projects/quazip/files/quazip/): 0.7.3
23-
- [SDL2](https://www.libsdl.org/download-2.0.php): 2.0.3
24-
- [Intel Threading Building Blocks](https://www.threadingbuildingblocks.org/): 4.3
25-
- [vcpkg](https://github.com/highfidelity/vcpkg):
26-
- [VHACD](https://github.com/virneo/v-hacd)
27-
- [zlib](http://www.zlib.net/): 1.28 (Win32 only)
28-
- [nvtt](https://github.com/highfidelity/nvidia-texture-tools): 2.1.1 (customized)
16+
- [Bullet Physics Engine](https://github.com/bulletphysics/bullet3/releases): 2.83
17+
- [glm](https://glm.g-truc.net/0.9.8/index.html): 0.9.8
18+
- [Oculus SDK](https://developer.oculus.com/downloads/): 1.11 (Win32) / 0.5 (Mac)
19+
- [OpenVR](https://github.com/ValveSoftware/openvr): 1.0.6 (Win32 only)
20+
- [Polyvox](http://www.volumesoffun.com/): 0.2.1
21+
- [QuaZip](https://sourceforge.net/projects/quazip/files/quazip/): 0.7.3
22+
- [SDL2](https://www.libsdl.org/download-2.0.php): 2.0.3
23+
- [Intel Threading Building Blocks](https://www.threadingbuildingblocks.org/): 4.3
24+
- [vcpkg](https://github.com/highfidelity/vcpkg):
25+
- [VHACD](https://github.com/virneo/v-hacd)
26+
- [zlib](http://www.zlib.net/): 1.28 (Win32 only)
27+
- [nvtt](https://github.com/highfidelity/nvidia-texture-tools): 2.1.1 (customized)
2928

3029
The above dependencies will be downloaded, built, linked and included automatically by CMake where we require them. The CMakeLists files that handle grabbing each of the following external dependencies can be found in the [cmake/externals folder](cmake/externals). The resulting downloads, source files and binaries will be placed in the `build/ext` folder in each of the subfolders for each external project.
3130

@@ -38,7 +37,7 @@ Hifi uses CMake to generate build files and project files for your platform.
3837
#### Qt
3938
CMake will download Qt 5.12.3 using vcpkg.
4039

41-
To override this (i.e. use an installed Qt configuration - you will need to set a QT_CMAKE_PREFIX_PATH environment variable pointing to your Qt **lib/cmake** folder.
40+
To override this (i.e. use an installed Qt configuration - you will need to set a QT_CMAKE_PREFIX_PATH environment variable pointing to your Qt **lib/cmake** folder.
4241
This can either be entered directly into your shell session before you build or in your shell profile (e.g.: ~/.bash_profile, ~/.bashrc, ~/.zshrc - this depends on your shell and environment). The path it needs to be set to will depend on where and how Qt5 was installed. e.g.
4342

4443
export QT_CMAKE_PREFIX_PATH=/usr/local/Qt5.12.3/gcc_64/lib/cmake
@@ -74,7 +73,7 @@ Any variables that need to be set for CMake to find dependencies can be set as E
7473

7574
For example, to pass the QT_CMAKE_PREFIX_PATH variable (if not using the vcpkg'ed version) during build file generation:
7675

77-
cmake .. -DQT_CMAKE_PREFIX_PATH=/usr/local/qt/5.10.1/lib/cmake
76+
cmake .. -DQT_CMAKE_PREFIX_PATH=/usr/local/qt/5.12.3/lib/cmake
7877

7978
#### Finding Dependencies
8079

BUILD_LINUX.md

Lines changed: 71 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -1,162 +1,126 @@
11
# Linux build guide
22

33
Please read the [general build guide](BUILD.md) for information on dependencies required for all platforms. Only Linux specific instructions are found in this file.
4-
54
## Qt5 Dependencies
65

76
Should you choose not to install Qt5 via a package manager that handles dependencies for you, you may be missing some Qt5 dependencies. On Ubuntu, for example, the following additional packages are required:
87

98
libasound2 libxmu-dev libxi-dev freeglut3-dev libasound2-dev libjack0 libjack-dev libxrandr-dev libudev-dev libssl-dev zlib1g-dev
109

1110
## Ubuntu 16.04/18.04 specific build guide
12-
13-
### Ubuntu 18.04 only
14-
Add the universe repository:
15-
_(This is not enabled by default on the server edition)_
16-
```bash
17-
sudo add-apt-repository universe
18-
sudo apt-get update
19-
```
20-
21-
### Prepare environment
11+
### Ubuntu 16.04 only
2212
Add the following line to *.bash_profile*
2313
`export QT_QPA_FONTDIR=/usr/share/fonts/truetype/dejavu/`
14+
### Ubuntu 18.04 only
15+
Add the universe repository:
16+
_(This is not enabled by default on the server edition)_
17+
`sudo add-apt-repository universe`
18+
`sudo apt-get update`
2419
#### Install build dependencies:
25-
```bash
26-
sudo apt-get install libasound2 libxmu-dev libxi-dev freeglut3-dev libasound2-dev libjack0 libjack-dev libxrandr-dev libudev-dev libssl-dev zlib1g-dev
27-
```
28-
20+
1. OpenSSL
21+
`sudo apt-get install libssl-dev`
22+
Verify with `openssl version`
23+
1. OpenGL
24+
Verify (first install mesa-utils - `sudo apt install mesa-utils -y`) by `glxinfo | grep "OpenGL version"`
25+
`sudo apt-get install libgl1-mesa-dev -y`
26+
`sudo ln -s /usr/lib/x86_64-linux-gnu/libGL.so.346.35 /usr/lib/x86_64-linux-gnu/libGL.so.1.2.0`
2927
#### To compile interface in a server you must install:
30-
```bash
31-
sudo apt-get -y install libpulse0 libnss3 libnspr4 libfontconfig1 libxcursor1 libxcomposite1 libxtst6 libxslt1.1
32-
```
33-
28+
`sudo apt-get -y install libpulse0 libnss3 libnspr4 libfontconfig1 libxcursor1 libxcomposite1 libxtst6 libxslt1.1`
3429
#### Install build tools:
35-
```bash
36-
# For Ubuntu 18.04
37-
sudo apt-get install cmake
38-
```
39-
```bash
40-
# For Ubuntu 16.04
41-
wget https://cmake.org/files/v3.9/cmake-3.9.5-Linux-x86_64.sh
42-
sudo sh cmake-3.9.5-Linux-x86_64.sh --prefix=/usr/local --exclude-subdir
43-
```
44-
45-
#### Install Python 3:
46-
```bash
47-
sudo apt-get install python3
48-
```
30+
1. First update the repositiories:
31+
`sudo apt-get update -y`
32+
`sudo apt-get upgrade -y`
33+
1. git
34+
`sudo apt-get install git -y`
35+
Verify by git --version
36+
1. g++
37+
`sudo apt-get install g++ -y`
38+
Verify by g++ --version
39+
1. cmake
40+
`sudo apt-get install cmake -y`
41+
Verify by git --version
42+
1. cmake
43+
`wget https://cmake.org/files/v3.14/cmake-3.14.2-Linux-x86_64.sh`
44+
`sudo sh cmake-3.14.2-Linux-x86_64.sh --prefix=/usr/local --exclude-subdir`
45+
##### Python
46+
Add to _bash_profile:
47+
`
4948
### Get code and checkout the tag you need
5049
Clone this repository:
5150
```bash
5251
git clone https://github.com/highfidelity/hifi.git
5352
```
5453

5554
To compile a RELEASE version checkout the tag you need getting a list of all tags:
56-
```bash
57-
git fetch -a
58-
git tags
59-
```
60-
55+
`git fetch -a`
56+
`git tags`
6157
Then checkout last tag with:
62-
```bash
63-
git checkout tags/v0.79.0
64-
```
65-
58+
`git checkout tags/v0.79.0`
6659
### Compiling
6760

6861
Create the build directory:
69-
```bash
70-
mkdir -p hifi/build
71-
cd hifi/build
72-
```
73-
62+
`mkdir -p hifi/build`
63+
`cd hifi/build`
7464
Prepare makefiles:
75-
```bash
76-
cmake ..
77-
```
65+
`cmake ..`
7866

79-
Start compilation of the server and get a cup of coffee:
80-
```bash
81-
make domain-server assignment-client
82-
```
67+
* If cmake fails with a vcpkg error - delete /tmp/hifi/vcpkg.
8368

84-
To compile interface:
85-
```bash
86-
make interface
87-
```
69+
Start compilation of the server and get a cup of coffee:
70+
`make domain-server assignment-client`
8871

72+
To compile interface:
73+
`make interface`
8974
In a server, it does not make sense to compile interface
90-
9175
### Running the software
9276

9377
#### Domain server
9478

9579
Running domain server:
96-
```bash
97-
./domain-server/domain-server
98-
```
99-
80+
`./domain-server/domain-server`
10081
#### Assignment clients
10182

10283
Running assignment client:
103-
```bash
104-
./assignment-client/assignment-client -n 6
105-
```
106-
84+
`./assignment-client/assignment-client -n 6`
10785
#### Interface
10886

10987
Running interface:
110-
```bash
111-
./interface/interface
112-
```
88+
`./interface/interface`
11389

114-
Go to localhost in the running interface.
90+
Go to localhost in the running interface.
11591

11692
##### Ubuntu 18.04 only
11793

11894
In Ubuntu 18.04 there is a problem related with NVidia driver library version.
11995

120-
It can be workarounded following these steps:
96+
It can be worked around following these steps:
12197

122-
Uninstall incompatible nvtt libraries:
123-
```bash
124-
sudo apt-get remove libnvtt2 libnvtt-dev
125-
```
98+
1. Uninstall incompatible nvtt libraries:
99+
`sudo apt-get remove libnvtt2 libnvtt-dev`
126100

127-
Install libssl1.0-dev:
128-
```bash
129-
sudo apt-get -y install libssl1.0-dev
130-
```
101+
1. Install libssl1.0-dev:
102+
`sudo apt-get -y install libssl1.0-dev`
131103

132-
Clone castano nvidia-texture-tools:
133-
```
134-
git clone https://github.com/castano/nvidia-texture-tools
135-
cd nvidia-texture-tools/
136-
```
104+
1. Clone castano nvidia-texture-tools:
105+
`git clone https://github.com/castano/nvidia-texture-tools`
106+
`cd nvidia-texture-tools/`
137107

138-
Make these changes in repo:
139-
* In file **VERSION** set `2.2.1`
140-
* In file **configure**:
141-
* set `build="release"`
142-
* set `-DNVTT_SHARED=1`
108+
1. Make these changes in repo:
109+
* In file **VERSION** set `2.2.1`
110+
* In file **configure**:
111+
* set `build="release"`
112+
* set `-DNVTT_SHARED=1`
143113

144-
Configure, build and install:
145-
```
146-
./configure
147-
make
148-
sudo make install
149-
```
114+
1. Configure, build and install:
115+
`./configure`
116+
`make`
117+
`sudo make install`
150118

151-
Link compiled files:
152-
```
153-
sudo ln -s /usr/local/lib/libnvcore.so /usr/lib/libnvcore.so
154-
sudo ln -s /usr/local/lib/libnvimage.so /usr/lib/libnvimage.so
155-
sudo ln -s /usr/local/lib/libnvmath.so /usr/lib/libnvmath.so
156-
sudo ln -s /usr/local/lib/libnvtt.so /usr/lib/libnvtt.so
157-
```
119+
1.. Link compiled files:
120+
`sudo ln -s /usr/local/lib/libnvcore.so /usr/lib/libnvcore.so`
121+
`sudo ln -s /usr/local/lib/libnvimage.so /usr/lib/libnvimage.so`
122+
`sudo ln -s /usr/local/lib/libnvmath.so /usr/lib/libnvmath.so`
123+
`sudo ln -s /usr/local/lib/libnvtt.so /usr/lib/libnvtt.so`
158124

159-
After running this steps you can run interface:
160-
```
161-
interface/interface
162-
```
125+
`. After running this steps you can run interface:
126+
`interface/interface`

BUILD_OSX.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,12 @@ Please read the [general build guide](BUILD.md) for information on dependencies
88

99
### Python 3
1010

11-
Download an install Python 3.6.6 or higher from [here](https://www.python.org/downloads/). Execute the `Update Shell Profile.command` script that is provided with the installer.
11+
Download an install Python 3.6.6 or higher from [here](https://www.python.org/downloads/).
12+
Execute the `Update Shell Profile.command` script that is provided with the installer.
1213

1314
### OpenSSL
1415

15-
Assuming you've installed OpenSSL using the homebrew instructions above, you'll need to set OPENSSL_ROOT_DIR so CMake can find your installations.
16+
Assuming you've installed OpenSSL using the homebrew instructions above, you'll need to set OPENSSL_ROOT_DIR so CMake can find your installations.
1617
For OpenSSL installed via homebrew, set OPENSSL_ROOT_DIR:
1718

1819
export OPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2l

BUILD_WIN.md

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
This is a stand-alone guide for creating your first High Fidelity build for Windows 64-bit.
22
## Building High Fidelity
3-
Note: We are now using Visual Studio 2017 and Qt 5.10.1. If you are upgrading from Visual Studio 2013 and Qt 5.6.2, do a clean uninstall of those versions before going through this guide.
3+
Note: We are now using Visual Studio 2017 and Qt 5.12.3.
4+
If you are upgrading from previous versions, do a clean uninstall of those versions before going through this guide.
45

56
Note: The prerequisites will require about 10 GB of space on your drive. You will also need a system with at least 8GB of main memory.
67

78
### Step 1. Visual Studio 2017 & Python
89

910
If you don’t have Community or Professional edition of Visual Studio 2017, download [Visual Studio Community 2017](https://www.visualstudio.com/downloads/).
1011

11-
When selecting components, check "Desktop development with C++". Also on the right on the Summary toolbar, check "Windows 8.1 SDK and UCRT SDK" and "VC++ 2015.3 v140 toolset (x86,x64)". If you do not already have a python development environment installed, also check "Python Development" in this screen.
12+
Leave default components.
13+
If you do not already have a python development environment installed, also check "Python Development" in this screen.
1214

1315
If you already have Visual Studio installed and need to add python, open the "Add or remove programs" control panel and find the "Microsoft Visual Studio Installer". Select it and click "Modify". In the installer, select "Modify" again, then check "Python Development" and allow the installer to apply the changes.
1416

@@ -23,13 +25,11 @@ Download and install the latest version of CMake 3.9.
2325
Download the file named win64-x64 Installer from the [CMake Website](https://cmake.org/download/). You can access the installer on this [3.9 Version page](https://cmake.org/files/v3.9/). During installation, make sure to check "Add CMake to system PATH for all users" when prompted.
2426
### Step 5. Running CMake to Generate Build Files
2527

26-
Run Command Prompt from Start and run the following commands:
27-
```
28-
cd "%HIFI_DIR%"
29-
mkdir build
30-
cd build
31-
cmake .. -G "Visual Studio 15 Win64"
32-
```
28+
Run Command Prompt from Start and run the following commands:
29+
`cd "%HIFI_DIR%"`
30+
`mkdir build`
31+
`cd build`
32+
`cmake .. -G "Visual Studio 15 Win64"`
3333

3434
Where `%HIFI_DIR%` is the directory for the highfidelity repository.
3535

@@ -55,11 +55,11 @@ Note: You can also run Interface by launching it from command line or File Explo
5555

5656
## Troubleshooting
5757

58-
For any problems after Step #7, first try this:
59-
* Delete your locally cloned copy of the highfidelity repository
60-
* Restart your computer
61-
* Redownload the [repository](https://github.com/highfidelity/hifi)
62-
* Restart directions from Step #7
58+
For any problems after Step #7, first try this:
59+
* Delete your locally cloned copy of the highfidelity repository
60+
* Restart your computer
61+
* Redownload the [repository](https://github.com/highfidelity/hifi)
62+
* Restart directions from Step #7
6363

6464
#### CMake gives you the same error message repeatedly after the build fails
6565

@@ -68,7 +68,3 @@ Remove `CMakeCache.txt` found in the `%HIFI_DIR%\build` directory.
6868
#### CMake can't find OpenSSL
6969

7070
Remove `CMakeCache.txt` found in the `%HIFI_DIR%\build` directory. Verify that your HIFI_VCPKG_BASE environment variable is set and pointing to the correct location. Verify that the file `${HIFI_VCPKG_BASE}/installed/x64-windows/include/openssl/ssl.h` exists.
71-
72-
#### Qt is throwing an error
73-
74-
Make sure you have the correct version (5.10.1) installed and `QT_CMAKE_PREFIX_PATH` environment variable is set correctly.

0 commit comments

Comments
 (0)