1.OpenGL mac开发环境搭建记录

1.安装GLEW 和GLFW,转摘至:https://www.cnblogs.com/pretty-guy/p/11357793.html

2.开始测试,整个工程报错,关键信息如下:

code signature in (*.dylib) not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned? Code has to be at least ad-hoc signed.

我这里的问题,是libGLEW.2.1.0.dylib 库文件没有签名,需要进行签名

3. 签名教程:https://blog.csdn.net/ReadyShowShow/article/details/102547633

4. 使用3 中的教程的时候,报了一个错:

the codesign_allocate helper tool cannot be found or used

5. 解决这个问题的方法:

  5.1. 运行如下命令

locate codesign_allocate

  5.2. 如果本地有codesign配置的话,那么就会显示好几个对应的配置文件路径。

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate-p
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man/man1/codesign_allocate.1
/usr/bin/codesign_allocate

  5.3. 如果没有显示上面的信息话,那么mac 会提示如下信息:

WARNING: The locate database (/var/db/locate.database) does not exist.
To create the database, run the following command:

  sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

Please be aware that the database can take some time to generate; once
the database has been created, this message will no longer appear.

  5.4. 我们按照它提示的,输入 sudo launchctl load ……进行新建,这个要等一会儿,大约1分钟左右,等到再次输入5.1 中的命令,如果出现5.2的结果,则证明创建完毕。

6. 再次进行动态库的签名操作(步骤3的操作),这时候,又报了一个错,提示 【Permission denied】,意思是无对应文件夹的权限,无法创建签名文件,解决方案:

$ sudo chmod -R 777 某一目录

7. 再次进行动态库签名操作,如果没有任何提示,那么签名成功,再次运行示例项目,得到一个烂三角形,开发环境搭建完毕!

8. 如果按照步骤3中的签名方法,无论如何也无法签名,那么可以尝试如下命令方式:

codesign --sign "your key" --keychain ~/Library/Keychains/apsd.keychain  your dylib path

 

posted @ 2020-05-24 14:10  gameDesigner  阅读(709)  评论(0编辑  收藏  举报