Once again failture.
Pure ECM works, so I believe there must be an linking error. Yafu searches for ECM, but it is unable to find it. I put the correct path into yafu.ini, somehow it won´t work. You can find the ini earlier in this post. If someone wants to take a look into the server, feel free to ask. I´ll give you VNC access. 
1 Attachment(s)
[QUOTE=MisterBitcoin;486636]Once again failture.
Pure ECM works, so I believe there must be an linking error. Yafu searches for ECM, but it is unable to find it. I put the correct path into yafu.ini, somehow it won´t work. You can find the ini earlier in this post. If someone wants to take a look into the server, feel free to ask. I´ll give you VNC access.[/QUOTE] I might be able to take a look in a little while, if you'd like to PM me with the details. Meanwhile, I've attached two instances of YAFU that were compiled on an i72600 running Debian. One is from the wip branch and the other from the trunk. Both run fine on other machines here, including a Fedora machine. 
@MisterBitcoin: I think it's running now. YAFU wouldn't even run a shell, due to something corrupted in the yafu.ini file. That's why it gave the error message dealing with B1pm1 failure, the first option.

[QUOTE=EdH;486662]
Meanwhile, I've attached two instances of YAFU that were compiled on an i72600 running Debian. One is from the wip branch and the other from the trunk. Both run fine on other machines here, including a Fedora machine.[/QUOTE] The trunk executable in your attachment works on Ubuntu 16.04.4 LTS! I have most of my factoring programsexecutables in <home>/factoring/ like: /CADONFS/ /GGNFS/ /gmp/ /GMPECM/ /msieve/ /YAFU/ This is the yafu.ini I use: (I deleted the %windows dir/paths as they are confusing). [code]B1pm1=100000 B1pp1=20000 B1ecm=11000 rhomax=1000 threads=32 pretest_ratio=0.25 ggnfs_dir=/home/victor/factoring/GGNFS/ ecm_path=/home/victor/factoring/GMPECM/ecm [/code]Everything I checked works (rho, P1, ECM, SIQS): [code]05/14/18 02:17:14 v1.34.5 @ Supermicro, **************************** 05/14/18 02:17:14 v1.34.5 @ Supermicro, Starting factorization of 2056802480868100646375721251575555494408897387375737955882170045672576386016591560879707933101909539325829251496440620798637813 05/14/18 02:17:14 v1.34.5 @ Supermicro, using pretesting plan: normal 05/14/18 02:17:14 v1.34.5 @ Supermicro, no tune info: using qs/gnfs crossover of 95 digits 05/14/18 02:17:14 v1.34.5 @ Supermicro, **************************** 05/14/18 02:17:14 v1.34.5 @ Supermicro, rho: x^2 + 3, starting 1000 iterations on C127 05/14/18 02:17:14 v1.34.5 @ Supermicro, prp6 = 280673 05/14/18 02:17:14 v1.34.5 @ Supermicro, rho: x^2 + 3, starting 1000 iterations on C121 05/14/18 02:17:14 v1.34.5 @ Supermicro, rho: x^2 + 2, starting 1000 iterations on C121 05/14/18 02:17:14 v1.34.5 @ Supermicro, rho: x^2 + 1, starting 1000 iterations on C121 05/14/18 02:17:14 v1.34.5 @ Supermicro, pm1: starting B1 = 150K, B2 = gmpecm default on C121 05/14/18 02:17:14 v1.34.5 @ Supermicro, prp12 = 598990818061 05/14/18 02:17:14 v1.34.5 @ Supermicro, current ECM pretesting depth: 0.00 05/14/18 02:17:14 v1.34.5 @ Supermicro, scheduled 30 curves at B1=2000 toward target pretesting depth of 33.85 05/14/18 02:17:15 v1.34.5 @ Supermicro, prp13 = 4527716228491 (curve 1 stg2 B1=2000 sigma=451473622 thread=1) 05/14/18 02:17:15 v1.34.5 @ Supermicro, prp10 = 2756163353 (curve 1 stg2 B1=2000 sigma=2019115514 thread=3) 05/14/18 02:17:15 v1.34.5 @ Supermicro, Finished 32 curves using Lenstra ECM method on C110 input, B1=2K, B2=gmpecm default 05/14/18 02:17:15 v1.34.5 @ Supermicro, current ECM pretesting depth: 15.19 05/14/18 02:17:15 v1.34.5 @ Supermicro, scheduled 74 curves at B1=11000 toward target pretesting depth of 26.77 05/14/18 02:17:15 v1.34.5 @ Supermicro, prp18 = 248158049830971629 (curve 1 stg1 B1=11000 sigma=971411753 thread=27) 05/14/18 02:17:15 v1.34.5 @ Supermicro, Finished 32 curves using Lenstra ECM method on C87 input, B1=11K, B2=gmpecm default 05/14/18 02:17:15 v1.34.5 @ Supermicro, current ECM pretesting depth: 17.35 05/14/18 02:17:15 v1.34.5 @ Supermicro, scheduled 42 curves at B1=11000 toward target pretesting depth of 21.54 05/14/18 02:17:15 v1.34.5 @ Supermicro, Finished 64 curves using Lenstra ECM method on C70 input, B1=11K, B2=gmpecm default 05/14/18 02:17:15 v1.34.5 @ Supermicro, current ECM pretesting depth: 20.31 05/14/18 02:17:15 v1.34.5 @ Supermicro, scheduled 54 curves at B1=50000 toward target pretesting depth of 21.54 05/14/18 02:17:16 v1.34.5 @ Supermicro, Finished 64 curves using Lenstra ECM method on C70 input, B1=50K, B2=gmpecm default 05/14/18 02:17:16 v1.34.5 @ Supermicro, final ECM pretested depth: 21.81 05/14/18 02:17:16 v1.34.5 @ Supermicro, scheduler: switching to sieve method 05/14/18 02:17:16 v1.34.5 @ Supermicro, starting SIQS on c70: 3950565477929583959090443657115834369563721138106225828250209513731263 05/14/18 02:17:16 v1.34.5 @ Supermicro, random seeds: 2053521748, 760562015 05/14/18 02:17:16 v1.34.5 @ Supermicro, ==== sieve params ==== 05/14/18 02:17:16 v1.34.5 @ Supermicro, n = 71 digits, 233 bits 05/14/18 02:17:16 v1.34.5 @ Supermicro, factor base: 12160 primes (max prime = 278671) 05/14/18 02:17:16 v1.34.5 @ Supermicro, single large prime cutoff: 22293680 (80 * pmax) 05/14/18 02:17:16 v1.34.5 @ Supermicro, double large prime range from 37 to 44 bits 05/14/18 02:17:16 v1.34.5 @ Supermicro, double large prime cutoff: 16854938548958 05/14/18 02:17:16 v1.34.5 @ Supermicro, allocating 5 large prime slices of factor base 05/14/18 02:17:16 v1.34.5 @ Supermicro, buckets hold 2048 elements 05/14/18 02:17:16 v1.34.5 @ Supermicro, using SSE4.1 enabled 32k sieve core 05/14/18 02:17:16 v1.34.5 @ Supermicro, sieve interval: 6 blocks of size 32768 05/14/18 02:17:16 v1.34.5 @ Supermicro, polynomial A has ~ 9 factors 05/14/18 02:17:16 v1.34.5 @ Supermicro, using multiplier of 3 05/14/18 02:17:16 v1.34.5 @ Supermicro, using SPV correction of 19 bits, starting at offset 30 05/14/18 02:17:16 v1.34.5 @ Supermicro, trial factoring cutoff at 78 bits 05/14/18 02:17:16 v1.34.5 @ Supermicro, ==== sieving started (32 threads) ==== 05/14/18 02:17:18 v1.34.5 @ Supermicro, trial division touched 1832182 sieve locations out of 16130113536 05/14/18 02:17:18 v1.34.5 @ Supermicro, squfof: 1 failures, 17917 attempts, 321456 outside range, 154968 prp, 17172 useful 05/14/18 02:17:18 v1.34.5 @ Supermicro, 14496 relations found: 5464 full + 9032 from 81510 partial, using 41021 polys (322 A polys) 05/14/18 02:17:18 v1.34.5 @ Supermicro, on average, sieving found 2.12 rels/poly and 33699.23 rels/sec 05/14/18 02:17:18 v1.34.5 @ Supermicro, trial division touched 1832182 sieve locations out of 16130113536 05/14/18 02:17:18 v1.34.5 @ Supermicro, ==== post processing stage (msieve1.38) ==== 05/14/18 02:17:18 v1.34.5 @ Supermicro, begin with 86974 relations 05/14/18 02:17:18 v1.34.5 @ Supermicro, reduce to 24385 relations in 5 passes 05/14/18 02:17:18 v1.34.5 @ Supermicro, recovered 24385 relations 05/14/18 02:17:18 v1.34.5 @ Supermicro, recovered 18407 polynomials 05/14/18 02:17:18 v1.34.5 @ Supermicro, attempting to build 14496 cycles 05/14/18 02:17:18 v1.34.5 @ Supermicro, found 14496 cycles in 2 passes 05/14/18 02:17:18 v1.34.5 @ Supermicro, distribution of cycle lengths: 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 1 : 5464 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 2 : 6196 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 3 : 2015 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 4 : 610 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 5 : 168 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 6 : 31 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 7 : 10 05/14/18 02:17:18 v1.34.5 @ Supermicro, length 9+: 2 05/14/18 02:17:18 v1.34.5 @ Supermicro, largest cycle: 8 relations 05/14/18 02:17:18 v1.34.5 @ Supermicro, matrix is 12160 x 14496 (2.3 MB) with weight 476375 (32.86/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, sparse part has weight 476375 (32.86/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, filtering completed in 4 passes 05/14/18 02:17:18 v1.34.5 @ Supermicro, matrix is 10983 x 11047 (1.5 MB) with weight 309420 (28.01/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, sparse part has weight 309420 (28.01/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, saving the first 48 matrix rows for later 05/14/18 02:17:18 v1.34.5 @ Supermicro, matrix is 10935 x 11047 (1.3 MB) with weight 248927 (22.53/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, sparse part has weight 220626 (19.97/col) 05/14/18 02:17:18 v1.34.5 @ Supermicro, matrix includes 64 packed rows 05/14/18 02:17:18 v1.34.5 @ Supermicro, commencing Lanczos iteration 05/14/18 02:17:18 v1.34.5 @ Supermicro, memory use: 1.7 MB 05/14/18 02:17:19 v1.34.5 @ Supermicro, lanczos halted after 174 iterations (dim = 10932) 05/14/18 02:17:19 v1.34.5 @ Supermicro, recovered 15 nontrivial dependencies 05/14/18 02:17:19 v1.34.5 @ Supermicro, prp36 = 117445937227520353139789517076610399 05/14/18 02:17:19 v1.34.5 @ Supermicro, prp35 = 33637310674071348724927955857253537 05/14/18 02:17:19 v1.34.5 @ Supermicro, Lanczos elapsed time = 1.0024 seconds. 05/14/18 02:17:19 v1.34.5 @ Supermicro, Sqrt elapsed time = 0.0142 seconds. 05/14/18 02:17:19 v1.34.5 @ Supermicro, SIQS elapsed time = 3.5977 seconds.[/code]NFS works too: [code]05/14/18 02:23:52 v1.34.5 @ Supermicro, nfs: commencing nfs on c94: 9379745492489847473195765085744210645855556204246905462578925932774371960871599319713301154409 05/14/18 02:23:53 v1.34.5 @ Supermicro, nfs: commencing poly selection with 32 threads 05/14/18 02:23:53 v1.34.5 @ Supermicro, nfs: setting deadline of 20 seconds 05/14/18 02:24:21 v1.34.5 @ Supermicro, nfs: completed 523 ranges of size 250 in 28.4503 seconds 05/14/18 02:24:21 v1.34.5 @ Supermicro, nfs: best poly = # norm 6.654414e13 alpha 5.486082 e 2.519e08 rroots 2 05/14/18 02:24:21 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:24:48 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:25:14 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:25:40 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:26:03 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:26:29 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:26:55 v1.34.5 @ Supermicro, nfs: commencing msieve filtering 05/14/18 02:27:33 v1.34.5 @ Supermicro, nfs: raising min_rels by 5.00 percent to 2072441 05/14/18 02:27:33 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:27:56 v1.34.5 @ Supermicro, nfs: commencing msieve filtering 05/14/18 02:28:42 v1.34.5 @ Supermicro, nfs: raising min_rels by 5.00 percent to 2410184 05/14/18 02:28:42 v1.34.5 @ Supermicro, nfs: commencing lattice sieving with 32 threads 05/14/18 02:29:07 v1.34.5 @ Supermicro, nfs: commencing msieve filtering 05/14/18 02:30:05 v1.34.5 @ Supermicro, nfs: commencing msieve linear algebra 05/14/18 02:33:02 v1.34.5 @ Supermicro, nfs: commencing msieve sqrt 05/14/18 02:33:54 v1.34.5 @ Supermicro, prp42 = 859735020008609871428759089831769060699941 05/14/18 02:33:54 v1.34.5 @ Supermicro, prp53 = 10910042366770069935194172108679294830357131379375349 05/14/18 02:33:54 v1.34.5 @ Supermicro, NFS elapsed time = 601.2586 seconds.[/code] 
[QUOTE=VictordeHolland;487524]The trunk executable in your attachment works on Ubuntu 16.04.4 LTS![/QUOTE]Thanks! I'm using the wip version everywhere to try to stay on the newest edge. Some of my machines are still using Ubuntu 14.04, but most are 16.04, with a handful of Debian systems. Of note, although I have not gathered empirical data to support this, the Debian systems appear to run a bit faster.
Very minor, but the wip version gives the proper tune info message when it runs: [code] fac: using tune info for qs/gnfs crossover [/code]The last time I ran the trunk version, it wouldn't give the proper message, even when the tune info was available. [code] fac: no tune info: using qs/gnfs crossover of 95 digits [/code]I still see this message with one of my machines running the wip version, too. I see you don't have tune info yet, but when you do, I'd be interested in what message is reported during the run? [QUOTE=VictordeHolland;487524]I have most of my factoring programsexecutables in <home>/factoring/ like: /CADONFS/ /GGNFS/ /gmp/ /GMPECM/ /msieve/ /YAFU/[/QUOTE]I see my difference is Math where you have factoring and I use all lower case for my package directories. I've also shortened my GMPECM to ecm, since that is the name used to run it. [QUOTE=VictordeHolland;487524]This is the yafu.ini I use: (I deleted the %windows dir/paths as they are confusing). [code]B1pm1=100000 B1pp1=20000 B1ecm=11000 rhomax=1000 threads=32 pretest_ratio=0.25 ggnfs_dir=/home/victor/factoring/GGNFS/ ecm_path=/home/victor/factoring/GMPECM/ecm [/code][/QUOTE]I also delete all the %entries, but they are ignored, if left. MisterBitcoin had a problem with his .ini, that I suspect was caused by a Windows editor adding an incompatible character somewhere. I even tried cleaning up the one he had, but the problem didn't clear up until I started fresh with a linux editor. I don't remember for sure, but I think I used vi. I do see a couple differences in your .ini that I have changed in mine. First, I have the gnfs* binaries in ggnfs/bin/. Second, if you have installed GMPECM, the executable should reside in /usr/local/bin/. This can be proven with: [code] $ whereis ecm ecm: /usr/local/bin/ecm [/code]So, in my .ini file I have the line: [code] ecm_path=/usr/local/bin/ecm [/code]Thanks for your post! 
Please help fix the yafu compile errors
Hi Ed,
I followed your instructions to install ecm, ggns, gmps, msieve successfully. However, when it came to compiling yafu, it kept failing with the following error. Could you please give me some suggestion to fix it. Best regards, Eric Ubuntu 18.04.3 [CODE]~/Math$ ls la drwxrwxrx 27 python python 12288 Sep 2 03:24 ecm drwxrwxrx 11 python python 4096 Apr 23 2011 ggnfs drwxrxrx 16 python python 4096 Sep 2 10:54 gmp drwxrwxrx 21 python python 4096 Sep 2 22:45 msieve drwxrwxrx 11 python python 4096 Sep 2 22:41 yafu cd yafu/ ~/Math/yafu$ make NFS=1 USE_SSE41=1 gcc g DUSE_SSE41 m64 msse4.1 DUSE_NFS O3 fomitframepointer Wall I. Iinclude Itop/aprcl Itop/ I../msieve/zlib I/usr/local/lib/ c o factor/qs/msieve/lanczos.o factor/qs/msieve/lanczos.c In file included from factor/qs/msieve/lanczos.c:20:0: include/qs.h:30:10: fatal error: cofactorize.h: No such file or directory #include "cofactorize.h" ^~~~~~~~~~~~~~~ compilation terminated. Makefile:370: recipe for target 'factor/qs/msieve/lanczos.o' failed make: *** [factor/qs/msieve/lanczos.o] Error 1[/CODE] 
[QUOTE=vochong;525062]Hi Ed,
I followed your instructions to install ecm, ggns, gmps, msieve successfully. However, when it came to compiling yafu, it kept failing with the following error. Could you please give me some suggestion to fix it. Best regards, Eric Ubuntu 18.04.3 [CODE]~/Math$ ls la drwxrwxrx 27 python python 12288 Sep 2 03:24 ecm drwxrwxrx 11 python python 4096 Apr 23 2011 ggnfs drwxrxrx 16 python python 4096 Sep 2 10:54 gmp drwxrwxrx 21 python python 4096 Sep 2 22:45 msieve drwxrwxrx 11 python python 4096 Sep 2 22:41 yafu cd yafu/ ~/Math/yafu$ make NFS=1 USE_SSE41=1 gcc g DUSE_SSE41 m64 msse4.1 DUSE_NFS O3 fomitframepointer Wall I. Iinclude Itop/aprcl Itop/ I../msieve/zlib I/usr/local/lib/ c o factor/qs/msieve/lanczos.o factor/qs/msieve/lanczos.c In file included from factor/qs/msieve/lanczos.c:20:0: include/qs.h:30:10: fatal error: cofactorize.h: No such file or directory #include "cofactorize.h" ^~~~~~~~~~~~~~~ compilation terminated. Makefile:370: recipe for target 'factor/qs/msieve/lanczos.o' failed make: *** [factor/qs/msieve/lanczos.o] Error 1[/CODE][/QUOTE] Unfortunately this probably only works with AVX2 if you are using the wip version. So, you'd need a computer new enough to have AVX2 instructions (haswell or newer) and then build with USE_AVX2=1. 
Thanks for helping out bsquared!
Hi Eric, This is the trouble with trying to stay on the edge. Sometimes it changes slightly and you slip off. Here's what you should do, and I'll probably change the post to this: Instead of using the /wip version which has the latest and greatest, use the following command to acquire the main release (/trunk) version of YAFU: First, I'd get rid of the current yafu folder. Then use the following in place of the /wip checkout: [code] svn co https://svn.code.sf.net/p/yafu/code/trunk $HOME/Math/yafu [/code]The rest should be pretty much the same, but let me know if it doesn't work. I do see I forgot to mention ggnfs in this thread, though. Thanks for helping me stay on top of what works (and doesn't). Ed 
Ed's modified instructions work perfectly.
Thank you Ed and bsquared!.
I followed Ed's newly modified instructions and was able to compile Yafu the very first time. Last year, I tried to install Yafu on another machine using Ed's original instructions and everything worked smoothly, so it was disconcerting to me why I encountered this error on this machine. You help bring the joy of mathematics and computing to the mass. Thank you so much! Best regards, Eric [QUOTE=EdH;525080]Thanks for helping out bsquared! Hi Eric, This is the trouble with trying to stay on the edge. Sometimes it changes slightly and you slip off. Here's what you should do, and I'll probably change the post to this: Instead of using the /wip version which has the latest and greatest, use the following command to acquire the main release (/trunk) version of YAFU: First, I'd get rid of the current yafu folder. Then use the following in place of the /wip checkout: [code] svn co https://svn.code.sf.net/p/yafu/code/trunk $HOME/Math/yafu [/code]The rest should be pretty much the same, but let me know if it doesn't work. I do see I forgot to mention ggnfs in this thread, though. Thanks for helping me stay on top of what works (and doesn't). Ed[/QUOTE] 
Glad to hear it's working now, Eric. Thank you for letting me know it wasn't. Although I test my instructions whenever I set up a "new" machine, I hadn't done so in a little while and I should, since I know bsquared is always staying on top of current capabilities with the /wip branch of YAFU. Ed

Hello
Been trying to build YAFU but seem to be stuck. Think maybe something with makefile but old brain is rusty so hoping one can point me in right direction  [CODE]../msieve/libmsieve.a(savefile.o): In function `savefile_open': savefile.c:(.text+0x12b): undefined reference to `gzopen64' savefile.c:(.text+0x24b): undefined reference to `gzopen64' savefile.c:(.text+0x291): undefined reference to `gzopen64' ../msieve/libmsieve.a(savefile.o): In function `savefile_close': savefile.c:(.text+0x36e): undefined reference to `gzclose' ../msieve/libmsieve.a(savefile.o): In function `savefile_write_line': savefile.c:(.text+0x478): undefined reference to `gzputs' ../msieve/libmsieve.a(savefile.o): In function `savefile_flush': savefile.c:(.text+0x4c5): undefined reference to `gzputs' ../msieve/libmsieve.a(savefile.o): In function `savefile_eof': savefile.c:(.text+0x39d): undefined reference to `gzeof' ../msieve/libmsieve.a(savefile.o): In function `savefile_read_line': savefile.c:(.text+0x41c): undefined reference to `gzgets' ../msieve/libmsieve.a(savefile.o): In function `savefile_rewind': savefile.c:(.text+0x51d): undefined reference to `gzrewind' collect2: error: ld returned 1 exit status Makefile:293: recipe for target 'x86_64' failed make: *** [x86_64] Error 1[/CODE] Running Ubuntu 18.04 and all other installs built well. Thanks. Cheers, Michael 
All times are UTC. The time now is 05:26. 
Powered by vBulletin® Version 3.8.11
Copyright ©2000  2021, Jelsoft Enterprises Ltd.