bitcoin-tools / nodebuilder

Run a secure Bitcoin Core node with ease.
MIT No Attribution
7 stars 1 forks source link

[BUG] on macOS arm64, compiling Bitcoin is throwing warnings #544

Open bitcoin-tools opened 7 months ago

bitcoin-tools commented 7 months ago

Describe the bug

This is an upstream issue, but nodebuilder can suppress it without suppressing all of stdout.

Will require some grep -A -B -C magic.

The following lines are printing in the terminal output.

+ make --jobs 4
ld: warning: -single_module is obsolete
qt/macnotificationhandler.mm:27:9: warning: 'NSUserNotification' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        NSUserNotification* userNotification = [[NSUserNotification alloc] init];
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:24:12: note: 'NSUserNotification' has been explicitly marked deprecated here
@interface NSUserNotification : NSObject <NSCopying> {
           ^
qt/macnotificationhandler.mm:27:50: warning: 'NSUserNotification' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        NSUserNotification* userNotification = [[NSUserNotification alloc] init];
                                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:24:12: note: 'NSUserNotification' has been explicitly marked deprecated here
@interface NSUserNotification : NSObject <NSCopying> {
           ^
qt/macnotificationhandler.mm:30:11: warning: 'NSUserNotificationCenter' is deprecated: first deprecated in macOS 11.0 - All NSUserNotifications API should be replaced with UserNotifications.frameworks API [-Wdeprecated-declarations]
        [[NSUserNotificationCenter defaultUserNotificationCenter] deliverNotification: userNotification];
          ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:118:12: note: 'NSUserNotificationCenter' has been explicitly marked deprecated here
@interface NSUserNotificationCenter : NSObject {
           ^
3 warnings generated.
ld: warning: ignoring duplicate libraries: '-levent'
ld: warning: ignoring duplicate libraries: '-levent'
ld: warning: ignoring duplicate libraries: '-levent'
ld: warning: ignoring duplicate libraries: '-levent'
ld: warning: ignoring duplicate libraries: '-levent', 'libbitcoin_util.a'
ld: warning: ignoring duplicate libraries: '-levent', 'libbitcoin_util.a'
+ printf '%s\n  %s' ok. 'Running compile checks, please wait... '
  Compiling source code, please wait... ok.

Steps to Reproduce

Run with -c option on macOS 14 / arm64. Or check the CI jobs.

Expected behavior

Should show Compiling source code, please wait... ok. without warnings.

Desktop (please complete the following information):

Additional context Add any other context about the problem here.

bitcoin-tools commented 7 months ago

Resolved temporarily by suppressing stderr - in order to be able to merge the test-compile feature.

The goal is to not suppress all of stderr, and instead to only do it selectively for certain warnings.

Leaving this issue open until then.