我想在Mac OS X上安装第三方C库(http://cgm.cs.mcgill.ca/~avis/C/lrs.html)。但是,二进制文件似乎不会安装在Mac OS X(10.9.5)上。该库适用于Unix/Linux平台。

这是尝试安装make文件时遇到的错误的几个示例。首先,这是开箱即用运行make all时的错误(由于某种原因,运行make all64不会执行任何操作):

ld: library not found for -lgmp

我通过MacPorts在/opt/local中安装了GMP库(https://gmplib.org/)。但是,似乎找不到该库:
cc 2nash-GMP.o -L. -llrsgmp -L/opt/local/include  -lgmp -o 2nash
ld: library not found for -lgmp
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [2nash] Error 1
rm 2nash-GMP.o

如何解决所有这些问题并安装在Mac上?

我要提到的是,我打算从我编写的某些(Matlab)代码的函数中多次调用此C库中的函数。我希望任何可能的解决方案都允许这样做。

更新#1:
此后,我做了以下工作:
  • 在makefile中,将LIBDIR/usr/lib更改为/opt/local/lib
  • 在makefile中,将INCLUDEDIR/usr/include更改为/opt/local/include
  • gmp.h文件从/opt/local/include复制到/usr/include
  • 在makefile中,将RANLIB ?= /bin/true更改为RANLIB ?= /usr/bin/true

  • 现在,当我运行make all时,我收到以下消息:
    make: Nothing to be done for `all'.
    

    应该采取什么其他步骤?

    最佳答案

    我想您会想要这样的东西:

    cc 2nash-GMP.o -L. -llrsgmp -I/opt/local/include -L/opt/local/lib -lgmp -o 2nash
    
    -I选项指定要包含的 header 的路径。 -L选项指定要包含的库文件的路径。

    10-04 11:28