Skip to content
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

particl-qt: init at 0.18.1.4 #46760

Closed
wants to merge 1 commit into from

Conversation

demyanrogozhin
Copy link
Member

Motivation for this change

Particl QT wallet that can be used to activate cold staking with Ladger hardware wallet.
Works Linux only so far.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@joachifm
Copy link
Contributor

@GrahamcOfBorg build particl-qt

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: particl-qt

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Timed out, unknown build status on x86_64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

  CXX      test/test_particl-pmt_tests.o
  CXX      test/test_particl-policyestimator_tests.o
  CXX      test/test_particl-pow_tests.o
  CXX      test/test_particl-prevector_tests.o
  CXX      test/test_particl-raii_event_tests.o
  CXX      test/test_particl-random_tests.o
  CXX      test/test_particl-reverselock_tests.o
  CXX      test/test_particl-rpc_tests.o
building of '/nix/store/n1mjn56iqn42jmy26lxbbjnjn8fkyxiv-particl-qt-0.16.2.0.drv' timed out after 3600 seconds
error: build of '/nix/store/n1mjn56iqn42jmy26lxbbjnjn8fkyxiv-particl-qt-0.16.2.0.drv' failed

@GrahamcOfBorg
Copy link

Timed out, unknown build status on aarch64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

  CXX      leveldb/db/libleveldb_a-filename.o
  CXX      leveldb/db/libleveldb_a-log_reader.o
  CXX      leveldb/db/libleveldb_a-log_writer.o
  CXX      leveldb/db/libleveldb_a-memtable.o
  CXX      leveldb/db/libleveldb_a-repair.o
  CXX      leveldb/db/libleveldb_a-table_cache.o
  CXX      leveldb/db/libleveldb_a-version_edit.o
  CXX      leveldb/db/libleveldb_a-version_set.o
building of '/nix/store/2y64jca7l32r9acm3b11k54g85np0pnf-particl-qt-0.16.2.0.drv' timed out after 3600 seconds
error: build of '/nix/store/2y64jca7l32r9acm3b11k54g85np0pnf-particl-qt-0.16.2.0.drv' failed

@xeji
Copy link
Contributor

xeji commented Oct 29, 2018

Please rebase and resolve merge conflict. You can also try enableParallelBuilding = true; here to speed up the build. Also I think it would make sense to use the same version of boost as for particl-core (if that works).

@demyanrogozhin demyanrogozhin changed the title particl-qt: init at 0.16.2 particl-qt: init at 0.17.0.2 Oct 30, 2018
@demyanrogozhin
Copy link
Member Author

I rebase and did same with boost. Also check UI tests - working. I guess enableParallelBuilding was inherited from particl-core into this derivation @xeji

@xeji
Copy link
Contributor

xeji commented Oct 30, 2018

You're right, enableParallelBuiling is inherited here.
@GrahamcOfBorg build particl-qt

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: particl-qt

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

libtool: warning: library '/nix/store/19xzi4s6ds8dijrla68543y11rkari2m-qtbase-5.11.1/lib/libQt5Core.la' was moved.
g++: error: libparticl_wallet.a: No such file or directory
make[2]: *** [Makefile:4840: qt/test/test_particl-qt] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/ywpzc8rja3h7965r9a1xkh6bass8wvm5-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/ywpzc8rja3h7965r9a1xkh6bass8wvm5-particl-qt-0.17.0.2.drv' failed

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

 #include <usbdevice/trezor/messages.pb.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:7801: usbdevice/libparticl_usbdevice_a-trezordevice.o] Error 1
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/ksfmc50pjr72cvaai0yq3903qc8sbys5-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/ksfmc50pjr72cvaai0yq3903qc8sbys5-particl-qt-0.17.0.2.drv' failed

@demyanrogozhin
Copy link
Member Author

Im confused, this built well on my laptop. Also I already saw this error when I try to build .17-Alfa, but back then I decide its due to unstable version.
Now I have to find why build is not reproducible. Its ether parallelism or libhid.

@xeji
Copy link
Contributor

xeji commented Oct 31, 2018

Let's start the build again and see if anything changes.
@GrahamcOfBorg particl-qt

@xeji
Copy link
Contributor

xeji commented Oct 31, 2018

@GrahamcOfBorg build particl-qt

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: particl-qt

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

libtool: warning: library '/nix/store/19xzi4s6ds8dijrla68543y11rkari2m-qtbase-5.11.1/lib/libQt5Core.la' was moved.
g++: error: libparticl_wallet.a: No such file or directory
make[2]: *** [Makefile:4840: qt/test/test_particl-qt] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/ywpzc8rja3h7965r9a1xkh6bass8wvm5-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/ywpzc8rja3h7965r9a1xkh6bass8wvm5-particl-qt-0.17.0.2.drv' failed

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

shrinking /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/bin/particl-tx
shrinking /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/bin/test_particl-qt
shrinking /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/lib/libparticlconsensus.so.0.0.0
gzipping man pages under /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/lib  /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2/bin
patching script interpreter paths in /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2
checking for references to /build in /nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2...
postPatchMkspecs
/nix/store/8xllx8wk7ybas2xzc1yivzn9sgc8s3hj-particl-qt-0.17.0.2

@xeji
Copy link
Contributor

xeji commented Oct 31, 2018

Since the build for x86_64-linux succeeded now I would assume the parallel build is non-deterministic (some internal dependencies not properly specified). The obvious solution is to disable parallel building.

@demyanrogozhin demyanrogozhin force-pushed the particl-qt branch 2 times, most recently from de980a1 to 2e3e578 Compare November 1, 2018 17:09
@demyanrogozhin
Copy link
Member Author

Thanks @xeji !

Disabled parallel building option for particl-qt and rebased to latest master.

It appears that C headers that should be generated by protobuf before compilation of usbdevice/ folder (needed for trezor hardware wallet support) occasionally was not generated during parallel build. Something for Particl team to look at.

@xeji
Copy link
Contributor

xeji commented Nov 1, 2018

Something for Particl team to look at.

I agree. It would be great if you could report that upstream.
So let's try the build again. It may time out without parallel building, we'll see...

@GrahamcOfBorg build particl-qt

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: particl-qt

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

libtool: warning: library '/nix/store/1qabyk51hlaax67hmldyw78q8hrk8ma2-qtbase-5.11.1/lib/libQt5Core.la' was moved.
g++: error: libparticl_wallet.a: No such file or directory
make[2]: *** [Makefile:4840: qt/test/test_particl-qt] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/xgx0rh8ldlckf180pmnq0f5fa7p6cxpb-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/xgx0rh8ldlckf180pmnq0f5fa7p6cxpb-particl-qt-0.17.0.2.drv' failed

@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

 #include <usbdevice/trezor/messages.pb.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:7801: usbdevice/libparticl_usbdevice_a-trezordevice.o] Error 1
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/davlh00g0pm00nb4zaf39njrv8cv2nmi-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/davlh00g0pm00nb4zaf39njrv8cv2nmi-particl-qt-0.17.0.2.drv' failed

];

# Parallel building become non-deterministic for particl-qt (see nixpkgs pr #46760)
enableParallelBuiling = false;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

because of the typo here, parallel building was NOT disabled...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, me bad. Fixed it. Reported problem and it's fixed in current unstable version: particl/particl-core@b620bad

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@xeji
Copy link
Contributor

xeji commented Nov 1, 2018

@GrahamcOfBorg build particl-qt

@GrahamcOfBorg
Copy link

No attempt on x86_64-darwin (full log)

The following builds were skipped because they don't evaluate on x86_64-darwin: particl-qt

Partial log (click to expand)


a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.


@GrahamcOfBorg
Copy link

Failure on x86_64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

 #include <usbdevice/trezor/messages.pb.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:7801: usbdevice/libparticl_usbdevice_a-trezordevice.o] Error 1
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/sh2lzx0j5pfqwsl07mf2yr2c1n4sm6gr-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/sh2lzx0j5pfqwsl07mf2yr2c1n4sm6gr-particl-qt-0.17.0.2.drv' failed

@demyanrogozhin
Copy link
Member Author

Same error. Now I'm not sure if parallel build has to do something with it.
At this point I would rather wait for next official stable release with Makefile fix.

@xeji
Copy link
Contributor

xeji commented Nov 1, 2018

I agree. Let's mark this as WIP and wait.

@GrahamcOfBorg
Copy link

Failure on aarch64-linux (full log)

Attempted: particl-qt

Partial log (click to expand)

 #include <usbdevice/trezor/messages.pb.h>
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:7801: usbdevice/libparticl_usbdevice_a-trezordevice.o] Error 1
make[2]: Leaving directory '/build/particl-core-0.17.0.2/src'
make[1]: *** [Makefile:11905: all-recursive] Error 1
make[1]: Leaving directory '/build/particl-core-0.17.0.2/src'
make: *** [Makefile:796: all-recursive] Error 1
builder for '/nix/store/pwzc0s1bj0yk6v19vic27m1bvifzpchk-particl-qt-0.17.0.2.drv' failed with exit code 2
error: build of '/nix/store/pwzc0s1bj0yk6v19vic27m1bvifzpchk-particl-qt-0.17.0.2.drv' failed

@mmahut
Copy link
Member

mmahut commented Aug 10, 2019

Are there any updates on this pull request, please?

@demyanrogozhin demyanrogozhin changed the title particl-qt: init at 0.17.0.2 particl-qt: init at 0.18.1.4 Sep 3, 2019
@demyanrogozhin
Copy link
Member Author

@mmahut pull request updated with actual version of source.

@demyanrogozhin
Copy link
Member Author

Closing, because mainline Particle-Core updated to v0.19 this PR adds outdated version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants