1

我正在尝试创建一个conda包,其中包含c必须使用-lz. 但是,在构建包时,即使我为它提供了任何可能的路径,ld也找不到。zlib

据我了解,conda创建几乎空的环境,然后用必要的库和工具填充它。它还安装zlib,以便有zlib.hin$BUILD_PREFIX/include/libz.so, libz.ain $BUILD_PREFIX/lib

编译本身看起来像

$BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-cc -fPIC -g -Wall -O2 -Wc++-compat main.o -o <name> -L. -l<name> -lm -lz -lpthread

x86_64-conda_cos6-linux-gnu-ccgcc version 7.3.0,它调用ld这里定义为$BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-ld。然后ld出现错误cannot find -lz

我尝试使用

export C_INCLUDE_PATH="$BUILD_PREFIX/include"
export LIBRARY_PATH="$BUILD_PREFIX/lib"
export LD_LIBRARY_PATH="$BUILD_PREFIX/lib"
export LD_PRELOAD="$BUILD_PREFIX/lib/libz.so"

在任何组合中,但这不起作用。

还有其他方法可以显示ld图书馆的路径吗?

4

0 回答 0