2012-08-12 73 views
1

我已将FFTW库(http://www.fftw.org/)连接到我在C++中创建的自定义mentalray DLL(使用NetBeans在Linux(CENTOS)上编译的DLL文件。在一个文件夹中添加自定义插件的软件(Autodesk Maya)问题是我已经在计算机上安装了FFTW,并且我不知道如何将Maya链接到FFTW库在窗口上,我将把FFTW DLL放到包含该应用程序启动exe文件的maya.exe文件
基本上我的问题是一个普通的LINUX程序员是如果我在Linux上安装FFTW库并创建一个.dll链接到它的软件如何获得软件链接到FFTW库? 让我知道如果你需要我提供更多的信息.​​.如何将FFTW库连接到软件?

回答

1

您不需要做任何特别的事情 - 只要FFTW库位于预期位置(/usr/local/lib),那么您就可以正常链接(gcc ... -lfftw3 ...)。

+0

我已将它们链接到我创建的.so文件,但是当我运行调用我的.so文件的应用程序时,无法找到FFTW文件。 – RohitWesley 2012-08-13 03:32:52

1

请确保编译正确的版本:fftw浮动(即,fftwf)与fftw双打。例如,您应该有一个libfftw3f.3.so文件。

如果您使用dlopen以fftw调用函数,请将您生成的.so文件放置在您的$PATH的某处。

如果mental ray“DLL”是静态库,则应该使用--enable-static --disable-shared配置fftw并运行sudo make install

如果mental ray“DLL”是动态库,则应该使用--disable-static --enable-shared配置fftw并运行sudo make install

为了安全起见,您可以同时做到这一点。

sudo make install只要您的mental ray“DLL”常规使用fftw(即导入fftw.h文件),就会将fftw“DLLs”放在正确的位置。

当您尝试构建“DLL”时检查链接器错误。如果您看到链接器错误,则忽略运行sudo make install,无论您使用fftw做什么,您的DLL都无法工作。