-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
optional static libraries building #64
base: master
Are you sure you want to change the base?
Conversation
da43553
to
1f30f04
Compare
@@ -1,3 +1,19 @@ | |||
[submodule "external/monero-project"] | |||
path = external/monero-project | |||
url = https://github.com/woodser/monero | |||
url = https://github.com/nsec1/monero.git | |||
branch = fixIncludePaths |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can the change in your branch, "fix zmq and sodium include dirs search", be generally applied to monero-project and opened as a PR?
If so, the PR should be opened ASAP, and then I can include your PR as a customization in monero-project until it's merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
url = https://github.com/woodser/monero | ||
url = https://github.com/nsec1/monero.git | ||
branch = fixIncludePaths | ||
[submodule "external/boost"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thinking about this further, I'm wondering if we should checkout these submodules as part of the monero-cpp project, to be generally available within that project, or if they're only necessary in the way we're building monero-java?
monero-ts, for example, does not require these submodules to be checked out, and I wouldn't want them to interfere with the build in that project.
But I could understand the argument to make these generally available in monero-cpp for other build setups.
Curious to get your thoughts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I followed your suggestion: woodser/monero-java#105 (comment)
and I agreed :)
We can pass a env var to on/off submodules build
include_directories(SYSTEM /usr/include/malloc) | ||
if(POLICY CMP0042) | ||
cmake_policy(SET CMP0042 NEW) | ||
option(USE_DEVICE_TREZOR "Trezor hardware wallet suport" ON) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Again wondering if we can skip this check and assume that support is ON
.
Would be better to be able to support these dependencies anyway.
4. Build monero-project, located as a submodule at ./external/monero-project. Install [dependencies](https://github.com/monero-project/monero#dependencies) as needed for your system, then build with: `make release-static -j8` | ||
5. Link to this library's source files in your application, or build monero-cpp to a shared library in ./build: `./bin/build_libmonero_cpp.sh` | ||
2. Update dependencies: `sudo apt update && sudo apt install build-essential autoconf libtool cmake pkg-config libzmq3-dev libunwind8-dev liblzma-dev libreadline6-dev libpgm-dev qttools5-dev-tools libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler libudev-dev python3 ccache doxygen graphviz nettle-dev libevent-dev bison flex` | ||
3. Build monero-project, located as a submodule at ./external/monero-project. Install [dependencies](https://github.com/monero-project/monero#dependencies) as needed for your system, then build with: `make release-static -j8` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Must admit, it's nice to see that unbound doesn't need to be installed separately.
|
||
[ -d $INSTALL_DIR ] || mkdir -p $INSTALL_DIR | ||
|
||
(cd external/boost && \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just need to ensure these additions don't interfere with the build process in monero-ts.
Ref. woodser/monero-java#74 haveno-dex/haveno#795