mpir icon indicating copy to clipboard operation
mpir copied to clipboard

How to install ?

Open catalinalb opened this issue 5 years ago • 15 comments

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

catalinalb avatar Oct 15 '19 17:10 catalinalb

There are extensive install instructions in the documentation.

But generally it is something like:

  • install yasm on your system
  • ./configure --enable-gmpcompat --with-yasm=/path/to/yasm
  • make install

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.

wbhart avatar Oct 15 '19 17:10 wbhart

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 avatar Nov 02 '19 12:11 catalinalb

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?

catalinalb avatar Nov 02 '19 17:11 catalinalb

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

wbhart avatar Nov 02 '19 20:11 wbhart

你好,我执行到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 请问应该怎么办?

qindeer avatar Feb 18 '20 05:02 qindeer

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

dvdfreitas avatar Jul 29 '21 11:07 dvdfreitas

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.

wbhart avatar Jul 29 '21 11:07 wbhart

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

dvdfreitas avatar Jul 29 '21 12:07 dvdfreitas

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

wbhart avatar Jul 29 '21 12:07 wbhart

Thanks so much for your help!

dvdfreitas avatar Jul 29 '21 12:07 dvdfreitas

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.

wbhart avatar Jul 29 '21 12:07 wbhart

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 ?

GitMensch avatar Mar 14 '22 09:03 GitMensch

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.

BrianGladman avatar Mar 14 '22 10:03 BrianGladman

@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.

crockeea avatar May 02 '23 22:05 crockeea

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.

madscientist avatar May 19 '23 23:05 madscientist