找不到-l 在Code :: Blocks Ubuntu中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了找不到-l 在Code :: Blocks Ubuntu中相关的知识,希望对你有一定的参考价值。
我正在尝试在Ubuntu上使用GLFW创建一个窗口。我通过apt-get
命令下载了GLFW并将其添加到Build Options -> Linker Settings
中。但是,当我尝试编译程序时,它给出了一个错误说法
ld cannot find -lGLFW
我在互联网上搜索过,当Code :: Blocks中发生这种情况时,我找不到该怎么办。我该怎么做才能解决这个问题?
我读过一些类似于我需要添加一些选项的内容,但我不知道哪些选项和确切内容。
注意:我正在使用GCC
solution的效果,在全局编译器设置中将glfw
添加到链接库中,libglfw
将添加到您使用该编译器构建的每个项目(可能是GCC)的链接中。
这是非常不必要的。只需在项目的构建选项中执行相同的操作: -
- 从Workspace树视图中,导航: - > Build options - > {Debug | Release} - > Linker settings - > Link libraries
- 输入
glfw
- 好的
- 重建
使用-lglfw
。
库名称区分大小写。 -lGLFW
!= -lgflw
。
例如:
- 在我的Debian 9系统上,
pkg-config --libs glfw3
给了我:-lglfw
在:/usr/lib/x86_64-linux-gnu/libglfw.so
- 而
pkg-config --libs gl
给出:-lGL
对应于:/usr/lib/x86_64-linux-gnu/libGL.so
好的,我解决了我的问题。
这太奇怪了。感谢genpfault的回答,我发现我的libglfw.so
文件位于/usr/lib/x86_64-linux-gnu
目录中。
我从构建选项中删除了GLFW
并将其添加到全局编译器设置 - >链接器设置(我在链接库中添加了glfw)和搜索目录 - >链接器我添加了/usr/lib/x86_64-linux-gnu
后,一切正常
一切都编译好了。
以上是关于找不到-l 在Code :: Blocks Ubuntu中的主要内容,如果未能解决你的问题,请参考以下文章
在gnc gcc编译器的已配置搜索路径中找不到文件可执行文件
Ubuntu下Code Blocks无法运行和Debug的解决方案