@cryptotaxi247 / kubo / commits / 55ea6ad6e

doc(README): document requirements for cross-compiling with OpenSSL support

fixes #6736

Steven Allen committed Oct 29, 2019 at 17:52 UTC 55ea6ad6e94cfd44f828ee65f621eecb46298797
1 file changed +17
README.md
+17
@@ -183,6 +183,23 @@ Alternatively, you can run `make build` to build the go-ipfs binary (storing it
183
184 **NOTE:** If you get an error along the lines of "fatal error: stdlib.h: No such file or directory", you're missing a C compiler. Either re-run `make` with `CGO_ENABLED=0` or install GCC.
185
186 +##### Cross Compiling
187 +
188 +Compiling for a different platform is as simple as running:
189 +
190 +```
191 +make build GOOS=myTargetOS GOARCH=myTargetArchitecture
192 +```
193 +
194 +##### OpenSSL
195 +
196 +To build go-ipfs with OpenSSL support, append `GOFLAGS=-tags=openssl` to your `make` invocation. Building with OpenSSL should significantly reduce the background CPU usage on nodes that frequently make or receive new connections.
197 +
198 +Note: OpenSSL requires CGO support and, by default, CGO is disabled when cross compiling. To cross compile with OpenSSL support, you must:
199 +
200 +1. Install a compiler toolchain for the target platform.
201 +2. Set the `CGO_ENABLED=1` environment variable.
202 +
203 #### Troubleshooting
204
205 - Separate [instructions are available for building on Windows](docs/windows.md).