Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将libs添加到eclipsecdt管理的项目中_C_Dependencies_Eclipse Cdt - Fatal编程技术网

如何将libs添加到eclipsecdt管理的项目中

如何将libs添加到eclipsecdt管理的项目中,c,dependencies,eclipse-cdt,C,Dependencies,Eclipse Cdt,我正在使用编写简单的C程序,在文档中找不到有关如何: 导入,如assert.h等 导入非标准的第三方库,例如glib,甚至可能是我自己的本地库 在JavaLand中,要将jar/lib添加到项目的构建/编译路径,一种解决方案是将jar复制到项目内的lib/目录中,右键单击它,然后转到buildpath>>添加到构建路径我想知道,对于带有CDT的C程序,什么是等效的?来自 包括:右击项目,转到Proj> > C/C++ + Buff> >设置> GCC C++编译器> > < /P> 必须为外

我正在使用编写简单的C程序,在文档中找不到有关如何:

  • 导入,如
    assert.h
  • 导入非标准的第三方库,例如
    glib
    ,甚至可能是我自己的本地库
在JavaLand中,要将jar/lib添加到项目的构建/编译路径,一种解决方案是将jar复制到项目内的
lib/
目录中,右键单击它,然后转到
buildpath>>添加到构建路径
我想知道,对于带有CDT的C程序,什么是等效的?

来自

包括:右击项目,转到Proj> > C/C++ + Buff> >设置> GCC C++编译器> > < /P> 必须为外部库(标头所在的位置)添加包含路径。Eclipse索引器(代码完成等)和编译器需要这些信息


<图书馆>:右键单击项目,转到Projt> C/C++ + Buff> >设置> GCC C++链接器>库。您必须添加库搜索路径(选项-L)和要链接的库(选项-L)。链接器需要此信息

很棒的发现@rost0031(+1)-一个快速跟进:我是C编程新手:“include”和“library”有什么区别?include是否只是未编译的源代码(必须随应用程序一起编译),而库已经是打包的二进制文件?再次感谢!库是一个二进制文件,它包含在其中编译的函数的所有符号。头文件(包括)包含这些函数的关联声明,告诉您库中有什么,并允许链接器链接到它们。有关库和头文件的详细信息,请参阅此处:是的,您必须同时包括这两个。编译器使用头文件查找从exe调用的函数的引用。链接器使用该库来实际查找对正在调用的函数的引用。请注意,头文件(包括)和库的说明是不同的。我应该稍微修改一下:对于标准的C语言,不必包括库。(stdio.h、stdlib.h等)。编译器将自动正确链接到这些文件。但是,如果您正在使用某个第三方库,则必须同时使用这两个库。如果要创建要使用的库,同样适用:必须同时提供头文件和dll/so/a文件。