Sorry for the late answer, I came back from FOSDEM trip only few days ago.
The error is related to the compiling of RocksDB library, a C++ codebase that NextGraph depends upon, and that requires some C header files to be present on your machine.
Can you run those commands to install the basic file sneeded for C++ compilation on a macOS ?
xcode-select --install
brew install llvm
// or alternatively
port install clang
let me know if this improves the build script.
thaks for trying out NextGraph :)
Hello @michielbdejong and thank you for the bug report.
Sorry for the late answer, I came back from FOSDEM trip only few days ago.
The error is related to the compiling of RocksDB library, a C++ codebase that NextGraph depends upon, and that requires some C header files to be present on your machine.
Can you run those commands to install the basic file sneeded for C++ compilation on a macOS ?
```
xcode-select --install
brew install llvm
// or alternatively
port install clang
```
let me know if this improves the build script.
thaks for trying out NextGraph :)
[...]
Compiling duration-str v0.7.1
Compiling svg2pdf v0.11.0
Compiling qrcode v0.14.1
Compiling whoami v1.5.1
Compiling addr v0.15.6
Compiling async-once-cell v0.5.3
Compiling async-native-tls v0.5.0
Compiling ng-tungstenite v0.19.0 (https://git.nextgraph.org/NextGraph/tungstenite-rs.git?branch=nextgraph#8788a92c)
Compiling ng-async-tungstenite v0.22.2 (https://git.nextgraph.org/NextGraph/async-tungstenite.git?branch=nextgraph#13de4e36)
Compiling ng-client-ws v0.1.1-alpha (/workspace/nextgraph-rs/ng-client-ws)
Compiling ngcli v0.1.1-alpha (/workspace/nextgraph-rs/ngcli)
error[E0463]: can't find crate for `openssl`
--> /workspace/.cargo/git/checkouts/rust-rocksdb-c2f083b9d4bca52a/75ee951/src/librocksdb_sys.rs:29:1
|
29 | extern crate openssl;
| ^^^^^^^^^^^^^^^^^^^^^ can't find crate
For more information about this error, try `rustc --explain E0463`.
error: could not compile `ng-rocksdb` (lib) due to 1 previous error
gitpod /workspace/nextgraph-rs (master) $ cargo install
warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
error: found a virtual manifest at `/workspace/nextgraph-rs/Cargo.toml` instead of a package manifest
gitpod /workspace/nextgraph-rs (master) $ cargo install cargo-watch
Updating crates.io index
Downloaded cargo-watch v8.5.3
Downloaded 1 crate (173.5 KB) in 0.07s
Ignored package `cargo-watch v8.5.3` is already installed, use --force to override
gitpod /workspace/nextgraph-rs (master) $ cargo build
warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
Compiling ng-rocksdb v0.21.0-ngpreview.6 (https://git.nextgraph.org/NextGraph/rust-rocksdb.git?branch=master#75ee9516)
error[E0463]: can't find crate for `openssl`
--> /workspace/.cargo/git/checkouts/rust-rocksdb-c2f083b9d4bca52a/75ee951/src/librocksdb_sys.rs:29:1
|
29 | extern crate openssl;
| ^^^^^^^^^^^^^^^^^^^^^ can't find crate
For more information about this error, try `rustc --explain E0463`.
error: could not compile `ng-rocksdb` (lib) due to 1 previous error
gitpod /workspace/nextgraph-rs (master) $
Hm, same issue when building this on https://gitpod.io:
```
[...]
Compiling duration-str v0.7.1
Compiling svg2pdf v0.11.0
Compiling qrcode v0.14.1
Compiling whoami v1.5.1
Compiling addr v0.15.6
Compiling async-once-cell v0.5.3
Compiling async-native-tls v0.5.0
Compiling ng-tungstenite v0.19.0 (https://git.nextgraph.org/NextGraph/tungstenite-rs.git?branch=nextgraph#8788a92c)
Compiling ng-async-tungstenite v0.22.2 (https://git.nextgraph.org/NextGraph/async-tungstenite.git?branch=nextgraph#13de4e36)
Compiling ng-client-ws v0.1.1-alpha (/workspace/nextgraph-rs/ng-client-ws)
Compiling ngcli v0.1.1-alpha (/workspace/nextgraph-rs/ngcli)
error[E0463]: can't find crate for `openssl`
--> /workspace/.cargo/git/checkouts/rust-rocksdb-c2f083b9d4bca52a/75ee951/src/librocksdb_sys.rs:29:1
|
29 | extern crate openssl;
| ^^^^^^^^^^^^^^^^^^^^^ can't find crate
For more information about this error, try `rustc --explain E0463`.
error: could not compile `ng-rocksdb` (lib) due to 1 previous error
gitpod /workspace/nextgraph-rs (master) $ cargo install
warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
error: found a virtual manifest at `/workspace/nextgraph-rs/Cargo.toml` instead of a package manifest
gitpod /workspace/nextgraph-rs (master) $ cargo install cargo-watch
Updating crates.io index
Downloaded cargo-watch v8.5.3
Downloaded 1 crate (173.5 KB) in 0.07s
Ignored package `cargo-watch v8.5.3` is already installed, use --force to override
gitpod /workspace/nextgraph-rs (master) $ cargo build
warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
Compiling ng-rocksdb v0.21.0-ngpreview.6 (https://git.nextgraph.org/NextGraph/rust-rocksdb.git?branch=master#75ee9516)
error[E0463]: can't find crate for `openssl`
--> /workspace/.cargo/git/checkouts/rust-rocksdb-c2f083b9d4bca52a/75ee951/src/librocksdb_sys.rs:29:1
|
29 | extern crate openssl;
| ^^^^^^^^^^^^^^^^^^^^^ can't find crate
For more information about this error, try `rustc --explain E0463`.
error: could not compile `ng-rocksdb` (lib) due to 1 previous error
gitpod /workspace/nextgraph-rs (master) $
About your last try on GitPod, I can see that the error is different, so maybe there is a bit of improvement ;)
I fixed the issue on my side and if you run the GitPod again it should work.
If you try on your local macOS, then you should run those commands before trying again:
# in nextgraph-rs folder
git pull
cargo update ng-rocksdb
let me know how it goes
> It didn't help, sorry.
Do you still have the same error about missing `cassert` header on your macOS machine?
If yes, you can troubleshoot maybe with this:
https://cmichel.io/fixing-cpp-compilation-bugs-for-the-mac-os-catalina-upgrade/
> Do you have a Docker container I can use to do the build?
for the docker container, it is here: https://git.nextgraph.org/NextGraph/nextgraph-rs/src/branch/master/ngd/docker/Dockerfile.ubuntu
> I'll try it on GitPod.
About your last try on GitPod, I can see that the error is different, so maybe there is a bit of improvement ;)
I fixed the issue on my side and if you run the GitPod again it should work.
If you try on your local macOS, then you should run those commands before trying again:
```
# in nextgraph-rs folder
git pull
cargo update ng-rocksdb
```
let me know how it goes
I'm seeing the following build error on my laptop (MacOS):
Hello @michielbdejong and thank you for the bug report.
Sorry for the late answer, I came back from FOSDEM trip only few days ago.
The error is related to the compiling of RocksDB library, a C++ codebase that NextGraph depends upon, and that requires some C header files to be present on your machine.
Can you run those commands to install the basic file sneeded for C++ compilation on a macOS ?
let me know if this improves the build script.
thaks for trying out NextGraph :)
It didn't help, sorry. Do you have a Docker container I can use to do the build?
I'll try it on GitPod.
build failure on macosto build failure on macos and gitpod 4 weeks agoHm, same issue when building this on https://gitpod.io:
sudo apt install libssl-dev
did not helpDo you still have the same error about missing
cassert
header on your macOS machine?If yes, you can troubleshoot maybe with this:
https://cmichel.io/fixing-cpp-compilation-bugs-for-the-mac-os-catalina-upgrade/
for the docker container, it is here: https://git.nextgraph.org/NextGraph/nextgraph-rs/src/branch/master/ngd/docker/Dockerfile.ubuntu
About your last try on GitPod, I can see that the error is different, so maybe there is a bit of improvement ;)
I fixed the issue on my side and if you run the GitPod again it should work.
If you try on your local macOS, then you should run those commands before trying again:
let me know how it goes