mersenneforum.org  

Go Back   mersenneforum.org > Factoring Projects > Msieve

Reply
 
Thread Tools
Old 2009-04-05, 10:32   #1
CRGreathouse
 
CRGreathouse's Avatar
 
Aug 2006

3×1,993 Posts
Default Trouble making msieve

I wasn't able to make msieve. Is there something I should be doing other than just "make {target} ECM=1"? I just downloaded the 1.41 source and did make (actually I changed the arch line in the makefile, but I get the same error either way):
Code:
gcc -D_FILE_OFFSET_BITS=64 -O3 -fomit-frame-pointer -march=k8 -DNDEBUG  -Wall -W -Wconversion -I. -Iinclude -Ignfs/poly -DHAVE_GMP_ECM -DHAVE_GMP -c -o common/smallfact/gmp_ecm.o common/smallfact/gmp_ecm.c
In file included from include/msieve.h:24,
                 from include/common.h:17,
                 from common/smallfact/gmp_ecm.c:21:
include/mp.h: In function ‘mp_cmp’:
include/mp.h:113: warning: conversion to ‘int32’ from ‘unsigned int’ may change the sign of the result
include/mp.h: In function ‘mp_mod_1_core’:
include/mp.h:216: warning: conversion to ‘int32’ from ‘uint32’ may change the sign of the result
include/mp.h: In function ‘mp_d2mp’:
include/mp.h:641: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
include/mp.h:643: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
include/mp.h:645: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
In file included from common/smallfact/gmp_ecm.c:34:
include/gmp_xface.h: In function ‘gmp2int64’:
include/gmp_xface.h:92: warning: conversion to ‘int64’ from ‘uint64’ may change the sign of the result
include/gmp_xface.h:95: warning: conversion to ‘int64’ from ‘uint64’ may change the sign of the result
common/smallfact/gmp_ecm.c: In function ‘postprocess’:
common/smallfact/gmp_ecm.c:117: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
common/smallfact/gmp_ecm.c:118: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
common/smallfact/gmp_ecm.c: In function ‘ecm_pp1_pm1’:
common/smallfact/gmp_ecm.c:261: error: incompatible type for argument 5 of ‘pm1’
common/smallfact/gmp_ecm.c:261: warning: passing argument 14 of ‘pm1’ makes pointer from integer without a cast
common/smallfact/gmp_ecm.c:261: warning: passing argument 16 of ‘pm1’ from incompatible pointer type
common/smallfact/gmp_ecm.c:261: error: too many arguments to function ‘pm1’
common/smallfact/gmp_ecm.c:281: error: incompatible type for argument 5 of ‘pp1’
common/smallfact/gmp_ecm.c:281: warning: passing argument 14 of ‘pp1’ makes pointer from integer without a cast
common/smallfact/gmp_ecm.c:281: warning: passing argument 16 of ‘pp1’ from incompatible pointer type
common/smallfact/gmp_ecm.c:281: error: too many arguments to function ‘pp1’
common/smallfact/gmp_ecm.c:312: error: incompatible type for argument 6 of ‘ecm’
common/smallfact/gmp_ecm.c:312: warning: passing argument 18 of ‘ecm’ from incompatible pointer type
common/smallfact/gmp_ecm.c:312: error: too many arguments to function ‘ecm’
make: *** [common/smallfact/gmp_ecm.o] Error 1
CRGreathouse is offline   Reply With Quote
Old 2009-04-05, 12:19   #2
henryzz
Just call me Henry
 
henryzz's Avatar
 
"David"
Sep 2007
Cambridge (GMT/BST)

23×3×5×72 Posts
Default

Quote:
Originally Posted by CRGreathouse View Post
I wasn't able to make msieve. Is there something I should be doing other than just "make {target} ECM=1"? I just downloaded the 1.41 source and did make (actually I changed the arch line in the makefile, but I get the same error either way):
Code:
gcc -D_FILE_OFFSET_BITS=64 -O3 -fomit-frame-pointer -march=k8 -DNDEBUG  -Wall -W -Wconversion -I. -Iinclude -Ignfs/poly -DHAVE_GMP_ECM -DHAVE_GMP -c -o common/smallfact/gmp_ecm.o common/smallfact/gmp_ecm.c
In file included from include/msieve.h:24,
                 from include/common.h:17,
                 from common/smallfact/gmp_ecm.c:21:
include/mp.h: In function ‘mp_cmp’:
include/mp.h:113: warning: conversion to ‘int32’ from ‘unsigned int’ may change the sign of the result
include/mp.h: In function ‘mp_mod_1_core’:
include/mp.h:216: warning: conversion to ‘int32’ from ‘uint32’ may change the sign of the result
include/mp.h: In function ‘mp_d2mp’:
include/mp.h:641: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
include/mp.h:643: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
include/mp.h:645: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
In file included from common/smallfact/gmp_ecm.c:34:
include/gmp_xface.h: In function ‘gmp2int64’:
include/gmp_xface.h:92: warning: conversion to ‘int64’ from ‘uint64’ may change the sign of the result
include/gmp_xface.h:95: warning: conversion to ‘int64’ from ‘uint64’ may change the sign of the result
common/smallfact/gmp_ecm.c: In function ‘postprocess’:
common/smallfact/gmp_ecm.c:117: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
common/smallfact/gmp_ecm.c:118: warning: conversion to ‘uint32’ from ‘int’ may change the sign of the result
common/smallfact/gmp_ecm.c: In function ‘ecm_pp1_pm1’:
common/smallfact/gmp_ecm.c:261: error: incompatible type for argument 5 of ‘pm1’
common/smallfact/gmp_ecm.c:261: warning: passing argument 14 of ‘pm1’ makes pointer from integer without a cast
common/smallfact/gmp_ecm.c:261: warning: passing argument 16 of ‘pm1’ from incompatible pointer type
common/smallfact/gmp_ecm.c:261: error: too many arguments to function ‘pm1’
common/smallfact/gmp_ecm.c:281: error: incompatible type for argument 5 of ‘pp1’
common/smallfact/gmp_ecm.c:281: warning: passing argument 14 of ‘pp1’ makes pointer from integer without a cast
common/smallfact/gmp_ecm.c:281: warning: passing argument 16 of ‘pp1’ from incompatible pointer type
common/smallfact/gmp_ecm.c:281: error: too many arguments to function ‘pp1’
common/smallfact/gmp_ecm.c:312: error: incompatible type for argument 6 of ‘ecm’
common/smallfact/gmp_ecm.c:312: warning: passing argument 18 of ‘ecm’ from incompatible pointer type
common/smallfact/gmp_ecm.c:312: error: too many arguments to function ‘ecm’
make: *** [common/smallfact/gmp_ecm.o] Error 1
which version of gmp-ecm did you use?
has msieve been changed to cope with the new 6.2.2?
henryzz is offline   Reply With Quote
Old 2009-04-05, 12:26   #3
akruppa
 
akruppa's Avatar
 
"Nancy"
Aug 2002
Alexandria

2,467 Posts
Default

I think no changes should be neccessary, the interface to GMP-ECM has not changed between 6.2.1 and 6.2.2. Charles, which version of GMP-ECM do you have installed?

Alex
akruppa is offline   Reply With Quote
Old 2009-04-05, 13:55   #4
jasonp
Tribal Bullet
 
jasonp's Avatar
 
Oct 2004

3,541 Posts
Default

The code uses calls to pm1(), pp1() and ecm() which have an extra argument in the latest SVN revision (but not in the release of GMP-ECM 6.2.2). In fact, the windows demo binary is linked to 6.2.2

Brian Gladman already reported the trouble, perhaps I should switch to using the supported GMP-ECM interface.

Last fiddled with by jasonp on 2009-04-05 at 13:57
jasonp is offline   Reply With Quote
Old 2009-04-05, 14:18   #5
akruppa
 
akruppa's Avatar
 
"Nancy"
Aug 2002
Alexandria

2,467 Posts
Default

Ah, I see... Romain Cosset's hyper-ellipic curve code changed the interface. I forgot that.

IIRC, the original reason for not using the "official" GMP-ECM interface was that the code was not under LGPL but GPL by mistake, but that was fixed in the meantime.

Alex
akruppa is offline   Reply With Quote
Old 2009-04-05, 18:29   #6
CRGreathouse
 
CRGreathouse's Avatar
 
Aug 2006

175B16 Posts
Default

Quote:
Originally Posted by akruppa View Post
Charles, which version of GMP-ECM do you have installed?
Whoops, that's it. I had an old version installed. When I made 6.2.2 and retried msieve it worked fine (though it threw up a whole lot of casting errors).
CRGreathouse is offline   Reply With Quote
Reply



Similar Threads
Thread Thread Starter Forum Replies Last Post
msieve polsel trouble on GTX1080Ti fivemack GPU Computing 2 2018-04-02 12:28
Making the most of my time. How? ozzy24 Information & Answers 13 2011-03-11 22:48
Trouble Running Msieve Sab Msieve 4 2009-07-07 06:19
would like a script making. :) Mobilemick Operation Billion Digits 1 2006-01-15 03:49
Help making system stable bartok Hardware 7 2003-07-06 07:05

All times are UTC. The time now is 01:06.


Sat Jul 17 01:06:18 UTC 2021 up 49 days, 22:53, 1 user, load averages: 2.40, 1.93, 1.61

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.