wbhart / mpir

Multiple Precision Integers and Rationals
GNU General Public License v3.0
227 stars 136 forks source link

How to install ? #282

Open catalinalb opened 4 years ago

catalinalb commented 4 years ago

Hi there,

I know it sounds stupid but there is no installation instructions. What are the right steps? Needed for GNU Radio.... still struggling to build it from scratch and also with pybombs so I need mpir.

Thank you, Catalin

wbhart commented 4 years ago

There are extensive install instructions in the documentation.

But generally it is something like:

If you don't need the gmp.h etc, you can drop the gmpcompat flag.

If you need Windows MSVC installation instructions then @BrianGladman may be able to help.

catalinalb commented 4 years ago

Thank you,

I do have yasm installed (from synaptic) I am running Ubuntu 19.10. How can I find the path to yasm?

For nearly two months I am still fighting in my free time installing/uninstalling linux distro's just so I can have a GNU Radio with QT Fosphor and gr-foo >:(

catalinalb commented 4 years ago

Hi, In the mpir folder I have:

bash autogen.sh bash configure.yasm make

then it replied WARNING: 'makeinfo' is missing on your system.

I did installed texi2html from synaptic run ldconfig but still the same error... :(

any ideas?

wbhart commented 4 years ago

It depends on your distro, but on Ubuntu it is texinfo that you need to install.

qindeer commented 4 years ago

你好,我执行到make这一步时,出现以下错误: kylake -c -o mpn/add_1.lo mpn/add_1.c make[2]: 没有规则可制作目标“mpn/add_n.lo”,由“libmpir.la” 需求。 停止。 make[2]: 离开目录“/home/qin/Downloads/mpir-master” Makefile:952: recipe for target 'all-recursive' failed make[1]: [all-recursive] Error 1 make[1]: 离开目录“/home/qin/Downloads/mpir-master” Makefile:755: recipe for target 'all' failed make: *** [all] Error 2 请问应该怎么办?

dvdfreitas commented 3 years ago

Hi everyone, I can't install mpir after cloning the project, because no "configure" file is available. Can you help me?

wbhart commented 3 years ago

First make sure yasm is installed. Then you have to run autogen.sh

It will create the configure file etc. The manual should tell you what to do from there.

dvdfreitas commented 3 years ago

Thanks for your fast reply, I have yasm installed, but when I run autogen I get: ./autogen.sh: 14: autoreconf: not found

wbhart commented 3 years ago

You have to install autotools (autoconf, automake, etc.)

dvdfreitas commented 3 years ago

Thanks so much for your help!

wbhart commented 3 years ago

MPIR hasn't had much in the way of updates for CPUs since 2012. You might want to add your CPU details to the file cpuid.c so it actually uses more optimised assembly instructions if it is not there.

Check cat /proc/cpuinfo for details of what family and model your CPU are.

GitMensch commented 2 years ago

MPIR hasn't had much in the way of updates for CPUs since 2012

@wbhart Is there any chance that this changes?

You might want to add your CPU details to the file cpuid.c so it actually uses more optimised assembly instructions if it is not there.

Can this be automated? If not, is there a note / example how to do this correct? @BrianGladman How to do this without /proc/cpuinfo ?

BrianGladman commented 2 years ago

The windows build using Microsoft Visual Studio has had assembler code updates up to 2019 and is still maintained and running fully on Visual Studio 2022. I don't work on the Linux/GCC elements of MPIR so I can't comment on them. The assembler code updates that I do for the Windows build could be available for GCC Windows builds using mingwx64 etc. but as far as I am aware no-one is supporting this.

crockeea commented 1 year ago

@wbhart

First make sure yasm is installed. Then you have to run autogen.sh

"autogen.sh" does not appear in https://github.com/wbhart/mpir/blob/master/INSTALL. I suggest you add this step to avoid confusion.

madscientist commented 1 year ago

The expected way to release an autotool-based project is that the developers, who have access to the autotools like autoconf and automake, will create a release package (tar or zip) that contains the configure script and other autotools generated files. This release package can then be downloaded and used by users who don't have access to the autotools software so they don't have to install it. FYI.