gpt4 book ai didi

glew - 无法在 xcode、macos lion 下链接 glew

转载 作者:行者123 更新时间:2023-12-04 06:05:02 25 4
gpt4 key购买 nike

使用glew,我正在尝试链接简单的程序

#include </usr/include/GL/glew.h>

int main (int argc, const char * argv[])
{

glewInit();

return 0;
}

在 XCode 4 中,在 OSX Lion 下,报告错误:
ld: library not found for -lGLEW.1.7.0
Command /Developer/usr/bin/clang++ failed with exit code 1

但是,错误输出还报告链接器的以下标志
-mmacosx-version-min=10.7 -L/usr/lib -lGLEW.1.7.0 -lglfw -framework OpenGL -framework Cocoa

事实上,libGLEW.1.7.0 确实驻留在/usr/lib

此外,如果我尝试手动构建程序,
  gcc -L/usr/lib -lGLEW.1.7.0 main.cpp

我得到一个 a.out 文件,没有报告任何错误(如果运行会导致段错误,但也许这是意料之中的)

关于什么可能导致 XCode 产生此错误以及如何避免它的任何想法?

最佳答案

我自己构建并安装了 GLEW,并且在 OS X 上的 makefile 中使用普通 gcc 遇到了同样的问题,并且编译了来自 https://github.com/jckarter/hello-gl 的代码。

以下步骤解决了该问题:

  • 我发现我的 GLEW 库( libGLEW.alibGLEW.dylib )安装在 /usr/lib 中目录(它肯定是由 root 拥有的,其他人拥有 r 权限)。试图改变 GLEW_LIB从 makefile 到 /usr/lib 的变量但还是得到了ld: library not found for -lGLEW
  • 之后我尝试将编译的程序直接链接到静态库(没有 -l 标志) - 为此我删除了 -lGLEW来自 gcc命令并将其更改为直接链接 t 库 /usr/lib/libGLEW.a - 它编译和链接很好
    好的 - 首先尝试是一种解决方法
  • 然后我使用以下命令创建了两个指向我的库的链接:
    ln -s /usr/lib/libGLEW.a /usr/local/lib/libGLEW.aln -s /usr/lib/libGLEW.dylib /usr/local/lib/libGLEW.dylib

  • 最后让它与原始 makefile 一起工作(仅将 GLEW_LIB 变量更改为 /usr/local/lib )。

    可能是 GLEW 的 make install应该将库放置到 /usr/local/lib直接地。

    关于glew - 无法在 xcode、macos lion 下链接 glew,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8469258/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com