如何从dll和lib文件创建libtool对象?

时间:2014-04-27 16:27:16

标签: c autotools libtool shared-libraries

我几天来一直在讨论这个问题,我似乎无法解决这个看似简单的问题。我需要从另一个DLL中使用DLL提供的函数。我已经验证了我需要的所有缺失符号都在dlltool提取的静态库中,但无论我尝试什么它都不会链接到共享库。这是我目前的尝试,似乎很有希望但只是让我遇到了一个新的错误。

libtool:link:无法从此主机上的非libtool对象构建libtool库'libnvml.la'

这是我的Makefile.am

AM_CPPFLAGS = -I$(top_srcdir)/include

lib_LTLIBRARIES = libnvml.la 

libnvml.la: libnvml.a
    ar x libnvml.a `ar -t libnvml.a` && $(LIBTOOL) --mode=link $(CC) -g -O -o $@ `ar -t libnvml.a`

libnvml.a: nvml.def
    $(DLLTOOL) -d $< -D nvml.dll -k -l $@ && ranlib libnvml.a

nvml.def: $(NVML)/lib/nvml.lib
    $(LIB2A)/bin/reimp.exe -d  $<

有谁知道如何将此lib文件转换为libtool库(.la),以便将其链接到我的dll?

0 个答案:

没有答案