13:25:45 I just tried building Monero and got this error: 13:25:47 [100%] Linking CXX executable ../../bin/monero-wallet-rpc/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libzmq.a(libzmq_la-gssapi_client.o): in function `zmq::gssapi_client_t::~gssapi_client_t()':(.text+0x5d): undefined reference to `gss_release_cred'/usr/bin/ld: 13:25:48 /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libzmq.a(libzmq_la-gssapi_client.o): in function `zmq::gssapi_client_t::process_next_token(zmq::msg_t*) [clone .part.0]':(.text+0x246): undefined reference to `gss_release_name'/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libzmq.a(libzmq_la-gssapi_client.o): in 13:25:48 function `zmq::gssapi_client_t::~gssapi_client_t()':(.text+0x780): undefined reference to `gss_release_cred'/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libzmq.a(libzmq_la-gssapi_client.o): in function `zmq::gssapi_client_t::initialize_context()':(.text+0x7fd): undefined reference to `gss_init_sec_context'/usr/bin/ld: 13:25:49 (.text+0x84d): undefined reference to `gss_import_name'/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/9/../../../x86_64-linux-gnu/libzmq.a(libzmq_la-gssapi_client.o): in function `zmq::gssapi_client_t::produce_next_token(zmq::msg_t*)':(.text+0x8a0): undefined reference to `gss_release_buffer'/usr/bin/ld: (.text+0x8c2): undefined reference to 13:25:49 `gss_release_buffer'/usr/bin/ld: (.text+0x8ce): undefined reference to `gss_release_name'/usr/bin/ld: (.text+0x8e2): undefined reference to `gss_release_name'/usr/bin/ld: (.text+0x8f7): undefined reference to `gss_delete_sec_context' 13:26:05 Does anyone know what is going on? This is Ubuntu 18/20 with fully up to date dependencies 13:26:21 I think it's caused by the latest libzmq3-dev 13:27:07 What branch are you building against? I'm on Ubuntu 20.04 and can test. 13:27:23 Perhaps another version of gssapi is linked earlier in the chain and so the interface is different 13:27:30 maybe needs another -lgssapi link or something 13:27:37 master branch @seth 13:28:04 here are all of the versions of my packages 13:28:08 Ok, building now. 13:28:24 Note, selecting 'libunwind-dev' instead of 'libunwind8-dev'Note, selecting 'libreadline-dev' instead of 'libreadline6-dev'build-essential is already the newest version (12.8ubuntu1).cmake is already the newest version (3.16.3-1ubuntu1).libexpat1-dev is already the newest version (2.2.9-1build1).liblzma-dev is already the newest version 13:28:24 (5.2.4-1).libreadline-dev is already the newest version (8.0-4).libsodium-dev is already the newest version (1.0.18-1).libssl-dev is already the newest version (1.1.1f-1ubuntu2).libunwind-dev is already the newest version (1.2.1-9build1).pkg-config is already the newest version (0.29.1-0ubuntu4).doxygen is already the newest version 13:28:25 (1.8.17-0ubuntu2).graphviz is already the newest version (2.42.2-3build2).libboost-all-dev is already the newest version (1.71.0.0ubuntu2).libldns-dev is already the newest version (1.7.0-4.1ubuntu1).libpgm-dev is already the newest version (5.2.122~dfsg-3ubuntu1).libzmq3-dev is already the newest version (4.3.2-2ubuntu1).libunbound-dev is already 13:28:25 the newest version (1.9.4-2ubuntu1.1). 13:32:20 I tried compiling some other forks of Monero and I get the same 13:33:34 Worked perfectly for me from Master 13:35:28 `libzmq3-dev is already the newest version (4.3.2-2ubuntu1).` 13:36:07 gcc = 9.3.0 13:36:47 Me too, 9.3 13:36:55 boost = 1.71 13:37:05 Are you in vm ? 13:37:18 nope, bare metal 13:37:22 We had no issues inside a vm, but a clean install of Ubuntu doesn't work 13:37:53 can you try installing all of the dependencies with apt-get 13:37:59 Anything out of date/missing if you run this: `sudo apt update && sudo apt install build-essential cmake pkg-config libboost-all-dev libssl-dev libzmq3-dev libunbound-dev libsodium-dev libunwind8-dev liblzma-dev libreadline6-dev libldns-dev libexpat1-dev doxygen graphviz libpgm-dev qttools5-dev-tools libhidapi-dev libusb-dev libprotobuf-dev protobuf-compiler` 13:38:12 sudo apt update && sudo apt install build-essential cmake pkg-config libboost-all-dev libssl-dev libzmq3-dev libunbound-dev libsodium-dev libunwind8-dev liblzma-dev libreadline6-dev libldns-dev libexpat1-dev doxygen graphviz libpgm-dev qttools5-dev-tools libhidapi-dev libusb-dev libprotobuf-dev protobuf-compiler 13:38:21 * sethsimmons sent a long message: < https://matrix.org/_matrix/media/r0/download/matrix.org/CLKTyIMzbDQPdEzTAaACpUom/message.txt > 13:38:29 also please run sudo apt-get upgrade 13:38:34 I'm on Matrix, let me know if the above came through 13:38:38 I'm already up to date. 13:40:01 It says: * sethsimmons sent a long message: < https://matrix.org/_matrix/media/.... 13:40:13 So it's basically invisible unless somee goes see the link. 13:40:18 thanks Seth will check those dependencies now 13:40:20 Good to know 13:40:26 Thanks moneromooo 13:40:29 Nah I can see it all moneromooo 13:40:38 Always wondered how MD comes through from matrix 13:40:40 oh sorry 13:40:44 yeah following link i can see it 13:40:50 makes sense :) 13:41:30 seth does it work for release-static-linux-x86_64 13:41:38 that is what i'm trying 13:42:20 Oh I'm just building release 13:42:20 Not static 13:42:42 trying that now 13:42:49 I don't normally do static builds 13:43:06 maybe the ubuntu version of libzmq is built to depend on some extra guff, that just works with the shared libs. but the static libs might not know about it since they don't say what they depend on 13:43:39 I blame cmake, likely wouldn't happen with pkg-config. 13:43:56 can't cmake read the zmq pkgconfig file? 13:44:04 It can. 13:44:49 The strangest thing is when I run inside of CLion IDE, and do a cmake-debug, It compiles fine 13:44:57 But it likely doesn't. It relies on "recipes" that ship with cmake. Recipe for being old and inflexible. 13:45:26 We have the same set of dependencies Seth 13:45:38 It's like systemd. "I will rewrite it all just because it's fun, and then inflict misery on others". 13:45:59 I didn't think that Monero had a zmq pkgconfig file 13:46:08 looks like we just use find_library (just search paths for .a or .so) instead of find_package for their recipies 13:46:33 Sorry, by "It" above, I meant "cmake". 13:46:44 peach34: it comes with zmq. try looking through dpkg -L libzmq-dev 13:46:52 Anyway, I'll butt out since I'm just complaining ^_^ 13:48:40 chris@chrispc:~/monero$ dpkg -L libzmq-devdpkg-query: package 'libzmq-dev' is not installedUse dpkg --contents (= dpkg-deb --contents) to list archive files contents. 13:48:54 do i need the 3 after zmq 13:48:55 peach34: as a hack you could try adding -DCMAKE_EXE_LINKER_FLAGS='-lgssapi' to the cmake arguments, or whatever else zmq wants 13:54:15 sethsimmons I found it here: /usr/lib/x86_64-linux-gnu/pkgconfig/libzmq.pc 13:54:42 Why is it that cmake-debug inside of the Clion IDE works and compiling from terminal doesn't? 13:54:45 static bbilt fine for me as well 13:55:09 *built 14:18:59 I will try putting that line into the top level cmakelists.txt 14:21:06 I'm wondering moneromooo if it works with CLion but not the terminal because CLion uses a different version of cmake that is bundled 14:21:51 Could be. cmake uses those modules it ships itself, so is bound to be out of date all the time. 14:21:52 Did you see that mine built fine, peach34 14:22:17 I guess you can compare the modules for that deal with 0mq and gss. 14:22:18 Yeah thanks sethsimmons 14:22:18 `cmake version 3.16.3` 14:22:44 Though IIRC the zmq stuff is from the monero tree... 14:23:22 Clion uses cmake 3.17.3 and works 14:23:36 Ah, it's manual. It just finds libraries. Might not be cmake's fault after all. 14:23:56 Maybe add a gss line after: find_library(NORM_LIBRARY norm) 14:24:18 it built fine after linking to gssapi 14:24:25 Probavly something like :find_libary(GSS_LIBRARY gss) (assuming it has the usual name) 14:24:48 Add add GSS_LIBRARY to the zmq libs 14:24:54 Oh, good. 14:25:58 shall I PR this ^ 14:26:47 Sure. 14:26:59 just adding to the linker flags? 14:27:08 Or what you suggested 14:27:15 Whatever builds. 14:27:47 Ok 14:27:58 we could use pkgconfig to find zmq instead, the libzmq i have installed doesn't depend on any gssapi kerberos scary stuff 14:38:01 Actually, I found that make -j4 works, but release-static doesn't 14:38:20 I had put the code in another fork of Monero lol, two secs 14:43:10 is this the right line? 14:43:12 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgssapi") 14:43:40 I got an error that the linker couldn't find it 14:45:40 same for gss 14:56:29 sorry i dced 14:56:58 Do I need more than the line 14:57:11 set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgssapi") or gss, because the linker cant find it 14:57:50 have a look at that package config file you found earlier. it might be named something else like '-lgssapi_krb5' 15:06:50 should I include the name of the .pc file 15:07:04 asymptotically 15:07:07 chris@chrispc:~/electroneum$ locate gssapi | grep "pc"/usr/include/gssrpc/auth_gssapi.h/usr/include/mit-krb5/gssrpc/auth_gssapi.h/usr/lib/x86_64-linux-gnu/pkgconfig/krb5-gssapi.pc/usr/lib/x86_64-linux-gnu/pkgconfig/mit-krb5-gssapi.pc/usr/lib/x86_64-linux-gnu/pkgconfig/mit-krb5/krb5-gssapi.pc 15:07:24 sorry bad formatting 15:07:54 I get three .pc files with a similar name 15:08:40 `pkg-config --static --libs libzmq` should spit them out 15:10:29 thanks very much. why is it that we feed libzmq rather than libzmq3 into pkg-config? 15:11:07 just because that's the name of the .pc file. 3 is just the name of the debian package, maybe you can choose between installing multiple versions 15:11:18 Thanks 15:18:01 Ok I've managed to do it with that thanks 15:33:32 You want to detect libgssapi. It might not be present in some systems, and not needed. And electroneum is a scam if you did not know (no coders, just advertisers). 15:33:47 And their miner didn't actually mine. 15:34:12 Scams really need to die, and they won't until people stop buying them, making themselves complicit in the process. 15:43:14 The really shitty thing is that regulation will come down hard on people trying to keep thier privacy, not on people helping scams. Fucked world. 16:07:31 moneromooo they aren't a scam at all, just not as blockchain dev heavy 16:08:32 They have built a custodial wallet system, a huge freelancing platform & have lots of real world adoption 16:09:19 Fully regulated , KYC/AML compliant 16:09:53 They have many coders and infrastructure guys I can assure you of that 16:11:00 Scam is the opposite of what they are, honestly. Their mobile mining was marketing to get people interested yes, and they were open about that from the start 16:14:01 Maybe they got coders since then, but at the start it was definitely no coders and a miner that didn't mine. 16:14:35 I guess they'd have the money to get coders now, after the original scam :) 16:15:20 Doesn't change the fact that whitewashing after the fact will incentivize scams if they can be forgiven later. 16:15:47 Nah they were always open that it didn't mine, that it was simulated. 16:16:01 For the same project anyway. If they were to start a different honest one, maybe. 16:16:18 And originally they had many coders, but only one blockchain guy 16:16:53 They are and have always been legitimate. The most legitimate out there believe it or not. 16:17:00 While I have no inside info, I seriously doubt that. I remember one guy asking a quesiton, didn't even know how to use a compiler. 16:17:16 The most ? Dude. You're doing yourself no favours here. 16:17:40 Yeah I think they started off knowing very little about blockchain and c++ 16:17:49 < peach34> And originally they had many coders 16:18:07 They mainly had PHP developers 16:18:08 Well, I guess could be javsscript coders. 16:18:12 o_O 16:18:12 current main repo resembles a ghost town 16:19:02 lol well yeah, I just don't think they're as bad as you think they are 16:19:12 Anyway, in my view, marketing heavy == scam anyway, regardless of whether they had an army of PHP coders. 16:19:14 But I get it 16:19:40 I understand why you'd be annoyed by them 16:20:22 moneromooo for this zmq issue, what is the best way to detect the library 16:20:40 I have my line find_library(GSSAPI gssapi_krb5) 16:20:43 Same as the existing tests for pgm and.. er.. another. 16:20:54 Looks like it, yes. 16:21:14 And the link line (or the zmq libs line, can't recall) needs to reference this new var. 16:22:24 I just used set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgssapi_krb5") 16:22:26 for the link line 16:22:45 But it seems doing find_library(GSSAPI gssapi_krb5) does not find the library 16:23:03 That'd change all the binaries. Not sure tha'ts what you want. Let me look now. 16:23:36 I wrapped it in a conditional 16:23:45 A bit after find_library, you see: 16:23:46 if(NORM_LIBRARY) set(ZMQ_LIB "${ZMQ_LIB};${NORM_LIBRARY}") 16:23:46 endif() 16:23:47 if(GSSAPI) link 16:24:13 Do the same. then anything that links aginst libzmq will also link against libgssapi_krb5 when found. 16:25:12 got you 16:25:56 So the colon separated ZMQ_LIB list means whenever lib zmq is found, link against norm, proto etc? 16:26:08 semicolon seperated* 16:27:32 It means: append the lib, if it was found. Done for each lib. 16:27:53 So yes. 16:31:59 Right, thanks. 16:38:22 moneromooo are we not at risk of duplicate definitions for those without this issue by adding a gssapi link like this? 16:39:16 I doubt it, unless you point out a particular reason why. 16:39:41 You can tpyically use -lfoo several times, that's not a problem unless you're linking against different symbols with the same name. 16:39:56 Which could happen if you link against two versions of libgss_krb5. 16:40:21 You usually can, if you link in groups 16:40:51 ^ exactly 16:40:58 You can do what ? And I don't know what groups are in this context. 16:41:27 You can usually link the same file more than once 16:42:30 I guess here there is no chance of linking against two different libgss_krb5 right 16:43:38 Right. 16:43:54 For no == very small. 16:57:01 yeah 17:31:15 -xmr-pr- grcasanova opened issue #6759: View-only wallet creation leads to an avalanche of warnings and errors 17:31:15 -xmr-pr- > https://github.com/monero-project/monero/issues/6759 19:29:03 Oh, I have something for the fork :) I'd forgot, but someone wanted to make the coinbase amount so miners can't ask for less. 19:29:13 Never did it, so I'll do it now. Trivial IIRC. 20:57:57 why does the current code allow miners to ask for less? and why remove that ability? 21:00:36 Because it made pre-rct coinbase txes sdmaller. Because it's not pointless and removes a potential fingerprinting vector. 21:00:44 ffs 21:00:50 Why do I always make this not/now typo... 21:01:01 It's now pointless. 21:31:15 -xmr-pr- moneromooo-monero opened pull request #6760: enforce claiming maximum coinbase amount 21:31:15 -xmr-pr- > https://github.com/monero-project/monero/pull/6760 21:37:45 ah ok makes sense 21:41:31 hyc: btw you might want to check 6757, up your alley. 21:45:12 ok 21:46:18 bah. whatever changes github made recently to their site's JS scripts, no longer works in my browser 21:46:32 no page updating, have to do manual reload on everything 21:46:52 exit 21:48:15 huh, there's really code calling threadpool wait() with the wrong tpool? how? 21:49:03 No. Just with no pool, which was useless. 21:49:10 because of an exception handler? 21:49:35 No, run would exit (due to the exception), so wait would hang waiting. 21:49:58 The fix is the try/catch in run. The rest is armour plating just in case of other bug. 21:50:04 ok 21:50:31 question- should ec_point in monero core not be declared as containing unsigned chars instead of just chars? 21:50:34 oh I read the commits in reverse order 21:51:07 I'd say whichever needs the fewest casts :) 21:51:38 fewest cats? nioc? 21:51:39 I don't think anything really cares about signedness (ie, implicit promotion) outside the crypto-ops.c file, but that would need double checking. 21:51:47 C casts. 21:51:51 i know :P 21:52:09 rct uses the other signednes, which is a pain. 21:53:27 I'd be surprised if this didn't need a number of cast changes tbh. 21:55:10 does it make any more or less sense to use a particular signedness in the remainder of the application code in any way? 21:55:47 (is the followup question i'd ask if i were working on that!) 21:55:57 Typically user level code will see those as a black box really. 21:56:09 So it doesn't really matter I think. 21:56:28 hrm *sits down* whatre best practices? 21:56:28 I'd use whatever needs fewer casts to interface with whatever API I use. 21:56:43 yeah 21:56:45 the API 21:57:28 🙏 thank you! 21:57:32 i mean 21:57:35 mooooooo 21:58:58 bytes are bytes 21:59:42 Even on PDP-11. 22:00:27 Wait. Was that the one with 9 bit bytes ? I forget. 22:00:40 36 bit words. I think it was one of the PDPs. 22:01:32 Ah, was the 9 and 10. 22:08:53 yeah. and the DEC-10 22:40:47 hyc: but apis are non fungible