Я скачал исходный код и попробовал все, что вы сделали, и не удивительно, получил то же сообщение об ошибке.
И похоже, что исходный код использует GLFW2 вместо GLFW3.
glfwOpenWindowHint
переименован в glfwWindowHint
в GLFW3
См .: glfwOpenWindowHint не объявлен в этой области GLFW3 & GLEW
Вы можете попробовать установить GLFW2 и запустить его снова , Поскольку GLFW2 доступен в Ubuntu Xenial, не забудьте настроить sources.list
соответственно.
Для OpenGL SuperBible 6th
EDIT : я не смог установить libglfw2
из Ubuntu Xenial репозиторий. И вручную установлен dpkg
с официального сайта.
скачать .deb
файл с https://launchpad.net/ubuntu/xenial/+package/libglfw-dev
go в папку .deb
устанавливается и запускается sudo dpkg -i [name of libglfw2].deb
Запустите find . -name "libglfw*"
в /usr/lib
, чтобы найти путь к библиотеке. (может быть несколько libglfw.so
, поскольку вы уже скачали GLFW3
, поэтому будьте осторожны)
Создайте символическую ссылку c для библиотеки динамического c, только что установленной, запустив Следующая команда:
sudo ln -s /usr/lib/[path to file]/[filename] /usr/lib/[path to file]/libglfw2.so
Изменить sb6code/CMakeFiles/tunnel.dir/link.txt
следующим образом
-lglfw
до -lglfw2
Выполнить make
Для OpenGL SuperBible 7th
Если вы уже установили libglfw3
, но не смогли запустить cmake ..
, это Это может быть связано с тем, что ваш libglfw3.so
хранится как libglfw.so
.
. В этом случае вы можете создать символическую c ссылку на него:
sudo ln -s /usr/lib/[path to file]/[libglfw name].so /usr/lib/[path to file]/libglfw3.so
Сохраните и снова запустите cmake ..
внутри build
.
Если произойдет сбой из-за компоновщика, убедитесь, что у вас есть все зависимости:
libglfw3-dev libx11-dev libxrandr-dev libxinerama-dev libxi-dev libxxf86vm-dev libxcursor-dev