我对C编程有点新(今年夏天学到的),并且正在K-State的线性编程课程中学习。我的术语项目是建立一个线性规划求解器(内点法,我做了原始 - 双路径跟踪算法)。我已经将所有内容编码正确但无法获得有效的矩阵逆计算。我的教授建议我使用已建立的矩阵计算C库。这导致我去了#34; Meschach12b",我已经下载了。
我查了一下,学习了如何链接目录以及如何链接库。我正在使用CodeBlocks和Windows 10,仅供参考。我将CodeBlocks指向带有头文件的目录,然后去链接库,但看到没有" .lib"," .so",或" .a& #34;我下载的文件夹中的文件。我不知道我是不是以某种方式错过了它,或者如果没有这些文件就能做到这一点。我实际上每周7天,每天24小时在线搜索一种方法,将其实现到我的算法中,因为没有它,我的学期项目就没用了!这是本周到期所以任何帮助将不胜感激!
更多信息:
- 当我#include我试图使用的头文件时,它"工作"当我构建,直到我稍后调用该函数。然后会弹出一个错误,说有大量的"未定义的引用" (比如50+),但我只调用一个函数。我确定我的图书馆没有正确链接。
- 我搜索了这个网站,发现一个人询问Meschach,他声称他的图书馆安装得很好#34;并显示了他输入的内容的屏幕截图" whereis libmeschach"或类似的东西。我不知道该怎么做但它让我想到了我所缺少的东西!
-I'我会发布我需要的任何其他内容,但我绝望地指出正确的方向。我已经花了大约50个小时进入这个项目,我不希望它一切都是徒劳的。 : - (
答案 0 :(得分:1)
假设您下载了类似mesch12b.zip(来自meschach)的内容,则需要先构建库。前面提到的文件似乎有一个MicroSoft目录,包含一个make文件,虽然我没有尝试在Windows系统上构建它(警告:它可能不是一件容易的事,很遗憾)。
如果您从其他地方下载了mescharc副本,请使用链接编辑原始帖子,然后查看是否可以帮助您。
请注意,我不使用CodeBlocks,所以我可以给你的建议是有点通用的。 (现在,如果您要下载社区版visual studio 或 NtEmacs和mingw-w64,我可以提供更详细的建议:))。
答案 1 :(得分:0)
您需要将库安装到开发系统中。只是指向 CodeBlocks到包目录是不够的安装它。它只是告诉编译器在哪里找到头文件。您需要将库模块编译并链接为库,静态或动态。
如果使用某种分发或程序包维护实用程序无法执行此操作,则需要重新编译库并自行安装。在自述文件中查找网站上的说明。
在Debian Linux系统上,您将使用sudo apt-get install libmeschach-dev
。
在使用Macports系统的Mac上,您可以使用sudo port install meschach