我必须使用LU分解来将简单模型拟合到C中的某些数据(模拟)。我需要做的一个例子是here:
但是,我遇到了一个更基本的问题:如何在C中安装软件包并在我的代码中调用它们?
我是C的新手,我已经习惯了R.但是我有这个帮助做一些关于矩阵反演的测试,LU分解和教授建议使用Lapack来做简单的事情(因此,我不需要代码自己LU分解等)。但是我不知道如何安装软件包并在我的代码中调用它,以便使用LAPACK的功能。
我有一个Windows 7 64位,我正在使用编译器代码块8.02
感谢您的帮助。
答案 0 :(得分:4)
通常,您不会在这种意义上“安装”C库。通常,在Windows中,您有三种类型的文件。头文件,通常以.h结尾,动态库,.dll,并且很可能是一些链接器文件(通常是.lib,.a或其他东西)。链接器和编译器需要能够在某处找到这些文件。通常,您可以设置包含目录路径和库目录路径。
E.g。假设您下载了一个名为foo的库,并将其解压缩到C:\ foo。
在该文件夹中,libfoo.a
,foo.dll
和foo.h
驻留。在Code :: Blocks中,您必须指向包含C:\foo
的目录路径和C:\foo
的库路径,以便链接器和编译器知道在哪里查找这些文件。由于您要链接foo库,因此您还必须在链接器命令行中设置-lfoo
或类似内容。这是GCC语法,但我认为Code :: Blocks反正在幕后使用GCC编译器。
在C代码中,您只需#include <foo.h>
,编译器就可以找到它。
答案 1 :(得分:1)
您需要安装该库,它实际上可能为此提供tool。检查他们的文档(例如,在其分布式源中的文件INSTALL
或README
)。如果库只使用标头,您可能只需将其标题复制到系统上的某个目录,但是他们的构建系统可能能够为您执行此操作。
完成后,您将告诉IDE在哪里查找源代码,以及库是否使用标题来链接实际的库文件。请参阅the Code::Blocks Wiki中的文档,了解如何针对某些示例案例执行此操作并适应您的库。
答案 2 :(得分:1)
在您的情况下最简单的方法是安装Cygwin。您可以使用setup.exe安装程序来安装GCC和LAPACK库。如果要使用LAPACK库,可以将-llapack选项添加到GCC命令行。