本地安装GNU MP,如何从ld访问它?

时间:2018-06-11 17:19:35

标签: bash compilation g++ ld

我有一个GMP的本地安装编译:

/path/to/gmp
    .../lib/gmp.h
    .../include/[gmp_binaries.etc]

现在,我导出路径,只是为了测试安装;一旦我开始工作,我会在一些中心位置添加符号链接:

export LD_LIBRARY_PATH=/path/to/gmp:$LD_LIBRARY_PATH

g++ -lgmp

// error: /usr/bin/ld: cannot find -lgmp

export LD_LIBRARY_PATH=/path/to/gmp/include:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/path/to/gmp/lib:$LD_LIBRARY_PATH

g++ -lgmp

// error: /usr/bin/ld: cannot find -lgmp

基本上,我的问题是:如何将本地库连接到ld

(关键是安装没有sudo的内容,所以我不能“只是____”,大部分都是)

1 个答案:

答案 0 :(得分:1)

-l需要-L位置才能在g++中进行搜索。 Make不会关注LD_LIBRARY_PATH。需要一个特定的位置来搜索/usr/lib

中未包含的特定库
  

# define library paths in addition to /usr/lib
  # if I wanted to include libraries not in /usr/lib I'd specify
  # their path using -Lpath, something like:
  LFLAGS = -L/home/newhall/lib -L../lib

From this site

找到你的libgmp文件,链接如下:

g++ -L/path/to/libgmp/ -lgmp