linux - 代码块输出不执行 linux

标签 linux executable codeblocks linux-mint

我是 linux 的新手,我想尝试制作一个小的 opengl 程序只是作为一个测试。我正在使用 glfw,我做了一个非常简单的测试:

    #include <iostream>
    #include <GL/glew.h>
    #include <GLFW/glfw3.h>

    using namespace std;

    int main()
    {
        if (!glfwInit())
        {
            return -1;
        }
        GLFWwindow *window = glfwCreateWindow(800, 600, "Het werkt", NULL, NULL);
        if (!window)
        {
            glfwTerminate();
        }
        glfwMakeContextCurrent(window);

        while (!glfwWindowShouldClose(window))
        {
            glfwPollEvents();
            glfwSwapBuffers(window);
        }
    }

现在,如果我尝试在 Code::Blocks 本身中运行它,它运行良好,调试,发布,没关系,它可以工作。但是当我尝试在 Code::Blocks 之外执行它时,它出错了。如果我双击可执行文件没有任何反应,如果我在终端中使用 ./ExecutableName 它会给我这个错误:

    error while loading shared libraries: libglfw.so.3: cannot open shared object file: No such file or directory

所有库都与可执行文件位于同一目录中,所以我不明白为什么会出现此错误。

顺便说一句,我正在研究 Linux Mint。

预先感谢您的帮助!

最佳答案

您应该将这些库放在您的 $PATH 中。发出 echo $PATH 命令并查看是否可以在其中(在那些路径中)找到库 - 如果找不到,则必须以某种方式将它们放在那里。我不确定您是否可以将库复制粘贴到那里,所以您可能想使用 Linux 发行版的包管理系统搜索它们。当您使用 Linux Mint 时,也许您可​​以尝试使用 sudo aptitude search glfw 进行搜索,然后尝试安装相应的软件包。

关于linux - 代码块输出不执行 linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24461020/

相关文章:

ruby-on-rails - --help 的命令行选项应用于错误的命令

linux - ec2 - 4 ubuntu 12.04 t2.micro 相同实例上的 Hadoop 2.2.0 多节点集群设置

linux - 从接口(interface)名称查找 IP 地址

c - 等待子进程一段时间

c++ - C/C++ 程序将输出(int)返回给其他程序

windows - 如何将 Erlang 程序编译成独立的 Windows 可执行文件?

c++ - 检查可执行文件中的变量

codeblocks - Code::Blocks - 如何在编辑器中显示装订线/垂直右边距线

c++ - 我可以从 NTFS 分区在 Ubuntu 中运行 C++ 项目吗?

c++ - 使用 minGW 构建 Boost