--- Log opened Wed Mar 04 00:00:12 2020 01:04 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has joined #secp256k1 01:09 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has quit [Ping timeout: 272 seconds] 01:10 -!- jonatack [~jon@37.171.110.92] has joined #secp256k1 01:59 -!- jonatack_ [~jon@37.167.199.192] has joined #secp256k1 02:03 -!- jonatack [~jon@37.171.110.92] has quit [Ping timeout: 258 seconds] 03:03 -!- jonatack_ [~jon@37.167.199.192] has quit [Ping timeout: 265 seconds] 03:03 -!- jonatack_ [~jon@213.152.161.25] has joined #secp256k1 03:54 -!- belcher [~belcher@unaffiliated/belcher] has joined #secp256k1 04:20 -!- jonatack_ [~jon@213.152.161.25] has quit [Ping timeout: 256 seconds] 04:22 -!- jonatack_ [~jon@37.167.220.16] has joined #secp256k1 04:54 -!- CodeShark__ [sid126576@gateway/web/irccloud.com/x-zfaaqxmwsbclwhye] has quit [Read error: Connection reset by peer] 04:54 -!- CodeShark__ [sid126576@gateway/web/irccloud.com/x-znyiwxyzpspwnjea] has joined #secp256k1 04:56 -!- dongcarl [~dongcarl@unaffiliated/dongcarl] has quit [Read error: Connection reset by peer] 05:50 < elichai2> What's the point of doing `libtool --mode=execute valgrind` instead of just valgrind? 07:51 -!- jonatack_ [~jon@37.167.220.16] has quit [Quit: jonatack_] 07:51 -!- jonatack [~jon@37.167.220.16] has joined #secp256k1 08:28 < real_or_random> I'm also interested in a detailed explanation. I understand automake pretty well now but libtool is still obscure to me 08:28 < sipa> i always assumed it was an autotools incantation that you need to use, or things would break on $obscure_plaform_z 08:29 < real_or_random> and wouldn't it be better to run the local ./libtool 08:29 < real_or_random> here it actually makes a difference ... I think some lib paths are wrong if we don't run it like this but don't ask me 08:29 < real_or_random> hm gmaxwell is not around 08:43 < real_or_random> related https://github.com/bitcoin-core/secp256k1/pull/723 08:48 < real_or_random> the docs of these GNU tools are so obscure. the "motivation" section starts with "Since early 1995, several different GNU developers have recognized the importance of having shared library support for their packages." 08:49 < elichai2> sipa: without running it in libtool I get errors from valgrind, so it does *something* (https://pastebin.com/raw/CAZ5vhM8) 08:51 < real_or_random> elichai2: https://www.gnu.org/software/libtool/manual/libtool.html#Debugging-executables 08:52 < elichai2> real_or_random: but there are no dynamic libs here (unless glibc counts?) 08:53 < real_or_random> yes, I'm not saying that this doc helped me :P 08:53 < elichai2> :) 08:56 < real_or_random> I think the interesting thing is that if you run it with valgrind but without libtool it tells me "This test can only usefully be run inside valgrind." 09:00 < sipa> real_or_random: isn't that because the binary is just some stub that finds the real binary and libraries, and then executes them? 09:00 < sipa> in which case the actual binary isn't being run through valgrind 09:02 < real_or_random> maybe. but where do we tell the build system to create a stub? 09:09 < sipa> maybe when you're doing dynanic linking 09:09 < sipa> as it needs access to libs then that aren't installed in the system 09:14 < nickler> not sure what exactly you want, but don't you just need to add `valgrind_ctime_test_LDFLAGS = -static` 09:14 < nickler> to Makefile.am, to get a binary instead of a script 09:20 < sipa> i don't think you should just override the user's build preferences 09:23 < real_or_random> we add -static for all test binaries 09:23 < real_or_random> yeah ok but I see your point 09:24 < real_or_random> valgrind_ctime_tests really uses lib as a real lib and accesses only the public API 09:26 < sipa> ah, in case it's common for all tests to be static, sure 09:34 < real_or_random> ah weird, the binary is really not a binary but a script Oo 09:35 < real_or_random> ok it's starting to make sense 09:35 < real_or_random> > .libs/valgrind_ctime_test 09:36 < real_or_random> .libs/valgrind_ctime_test: error while loading shared libraries: libsecp256k1.so.0: cannot open shared object file: No such file or directory 09:37 < real_or_random> this is what the libtool call fixes. and the build also replaces valgrind_ctime_test by a shell script that does essentially the same 09:37 < real_or_random> but if we run valgrind on the shell script, we memcheck our shell and not the actual binary called by shell script 09:38 < sipa> exactly 09:39 < sipa> if you build valgrind_ctime_test statically, do you get a real binary instead? 09:40 < real_or_random> yes 09:41 < real_or_random> and the valgrind test works fine 09:42 < real_or_random> I guess there is some other reason why gmaxwell preferred the other variant 09:43 < sipa> i suspect it was just copied from somewhere, or tinkered with until it works 09:43 < sipa> ah he responded 09:48 < elichai2> Ohhhh 09:49 < elichai2> It looked to me like it was checking the shell (complained about set_default_locale) but I couldn't figure out why 09:49 < elichai2> And why would my shell have mem leaks hehe 09:50 < real_or_random> yeah, replacing binaries is convenient but not exactly what the user expects 09:53 < nickler> heh I learned this when trying to gdb the bench "scripts" 09:56 < real_or_random> yeah ldd told me "not a dynamic executable" and I concluded that it must be static executable then -.- 09:57 < elichai2> I still don't get why the benchmarks aren't binaries though, they access internals so they can't be linked to libsecp as a lib 09:58 < sipa> elichai2: only bench_internal 09:58 < sipa> the other benchmarks absolutely have to use the real libsecp 09:58 < elichai2> Ha 09:58 < elichai2> So bench_internal is a real binary? 09:58 < sipa> otherwise you risk benchmarking artefacts of the bench build rather than the real production output 11:32 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 12:06 -!- jonatack [~jon@37.167.220.16] has quit [Read error: Connection reset by peer] 12:11 -!- jonatack [~jon@2a01:e0a:53c:a200:bb54:3be5:c3d0:9ce5] has joined #secp256k1 12:15 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Remote host closed the connection] 12:17 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 12:22 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Remote host closed the connection] 12:23 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 12:28 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 256 seconds] 12:44 -!- ncantu [~ncantu@37.170.175.201] has joined #secp256k1 12:54 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 13:02 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 256 seconds] 13:12 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 13:16 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 240 seconds] 14:03 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 14:08 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 240 seconds] 14:12 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 14:14 -!- roconnor [~roconnor@host-104-157-187-25.dyn.295.ca] has joined #secp256k1 14:17 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 272 seconds] 14:31 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 14:36 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 240 seconds] 14:38 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 14:42 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 256 seconds] 18:00 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 18:40 -!- belcher [~belcher@unaffiliated/belcher] has quit [Quit: Leaving] 20:25 -!- sipa [~pw@gateway/tor-sasl/sipa1024] has quit [Remote host closed the connection] 20:30 -!- sipa [~pw@gateway/tor-sasl/sipa1024] has joined #secp256k1 21:09 -!- ncantu [~ncantu@37.170.175.201] has quit [Ping timeout: 268 seconds] 21:10 -!- ncantu [~ncantu@212.129.39.4] has joined #secp256k1 21:23 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Read error: Connection reset by peer] 21:23 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 22:36 -!- ncantu [~ncantu@212.129.39.4] has quit [Ping timeout: 240 seconds] 22:36 -!- ncantu [~ncantu@37.165.58.31] has joined #secp256k1 --- Log closed Thu Mar 05 00:00:12 2020