在命令行上在Mac上链接GLEW和GLFW3

时间:2020-03-27 21:07:51

标签: macos opengl glfw glew

所以基本上,我在Mac上。

我通过自制软件在命令行上安装了glew和glfw3。

现在这些带有.h文件的库位于/ usr / local / include内,我可以无错误地包含它们(智能甚至可以找到方法和东西)。

问题是,与stdio.h string.h iostream ecc不同。包括它们显然还不够。

一旦我构建程序,此消息就会出现在控制台上:

str_split_fixed(file_list,"/",n=2) %>% data.frame -> df 

> #rename the columns of df
colnames(df) <- c("Genus","Genome")

> df
            Genus            Genome
1 Genus_species_1 genome_filename_1
2 Genus_species_1 genome_filename_2
3 Genus_species_1 genome_filename_n
4 Genus_species_2 genome_filename_1
5 Genus_species_2 genome_filename_2
6 Genus_species_2 genome_filename_n
7 Genus_species_n genome_filename_1
8 Genus_species_n genome_filename_2
9 Genus_species_n genome_filename_n 

我不知道该怎么办,您知道如何正确使用这些库吗?

1 个答案:

答案 0 :(得分:1)

这些是使glew和glfw3正常工作所需的步骤。

我假设您已经将它们与brew一起安装:

brew install --universal glew
brew install --universal glfw3

接下来,在编译代码时,需要包含带有-I标志的标头,并带有-l标志的上述库的链接,如下所示:

-I/usr/local/include  -lGLEW -lglfw

假设我们正在main.c中使用这些库开发OpenGL应用程序,则示例makefile的外观应类似于下图所示。

BIN = hellot
CC = clang++
FLAGS = -Wall -pedantic -mmacosx-version-min=10.9 -arch x86_64 -fmessage-length=0 -UGLFW_CDECL -fprofile-arcs -ftest-coverage
INC = -I/usr/local/include
LOC_LIB = -lGLEW -lglfw
FRAMEWORKS = -framework Cocoa -framework OpenGL -framework IOKit
SRC = main.c

all:
    ${CC} ${FLAGS} ${FRAMEWORKS} -o ${BIN} ${SRC} ${INC} ${LOC_LIB}

我包括一个sample project on Github as well,它通过渲染3D三角形(图形的问候世界)来演示上述内容。 See the same Makefile listed above here