How to get OpenGL man pages on Ubuntu as in "man glRotate"?
When on MacOSX, "man glRotate" brings up the glRotate manp开发者_运维知识库age.
On ubuntu, with manpages-dev and manpages-posix-dev insatlled, "man glRotate" doesn't bring up the glRotate manpage (though I can build and compile gl apps).
What am I missing? How do I setup this up?
sudo apt-get install opengl-4-man-doc opencl-1.2-man-doc
contains many man pages, e.g.:
man glDrawArrays
but it does not contain man glRotate
. I think this is because the deprecated immediate APIs are not included.
apt-file search glRotate
shows a few hits, but they don't seem "official".
Tested on Ubuntu 16.04.
Combine the Khronos OpenGL-Refpages repository with the PKGBUILD
script from the Arch opengl-man-pages
package.
# $Id$
# Maintainer: AndyRTR <andyrtr@archlinux.org>
pkgname=opengl-man-pages
pkgver=20170404
_commit=03552a8094ae3017e0b8b2ad44c602f81c03e848
pkgrel=1
pkgdesc="OpenGL Man Pages"
arch=('any')
url="https://github.com/KhronosGroup/OpenGL-Refpages"
license=('custom')
# OpenGL 4.x (current) API and GLSL pages - libxslt' 'docbook-xsl'
# OpenGL 3.x and older 'w3c-mathml2' 'docbook-mathml'
makedepends=('libxslt' 'docbook-xsl' 'w3c-mathml2' 'docbook-mathml' 'git')
source=(${pkgname}::git+https://github.com/KhronosGroup/OpenGL-Refpages#commit=$_commit
'LICENSE')
sha256sums=('SKIP'
'a7b2f6669d7ead91dcaf5a03620cdf9d37c54d83fd1899b4ef84683c7e6d4024')
# gl2.1 = OpenGL 2.1 (including fixed functionality)
# es3 = OpenGL ES 3.x (will always be the latest ES, currently 3.2)
# gl4 = OpenGL 4.x (current) API and GLSL pages
_mandirs=(gl4 es3 gl2.1)
pkgver() {
date +%Y%m%d
}
build() {
export WD=`pwd`
xmlcatalog --create --noout \
--add public "-//W3C//DTD MathML 2.0//EN" "file:///usr/share/xml/w3c/mathml2/mathml2.dtd" \
--add public "-//W3C//DTD MathML//EN" "file:///usr/share/xml/w3c/mathml2/mathml2.dtd" \
--add system "http://www.w3.org/TR/MathML2/dtd/mathml2.dtd" "file:///usr/share/xml/w3c/mathml2/mathml2.dtd" \
mathml2.cat
export XML_CATALOG_FILES="$WD/mathml2.cat /etc/xml/catalog"
for manpages in ${_mandirs[@]}; do
cd "${srcdir}/${pkgname}/${manpages}"
for file in gl*.xml; do
xsltproc --noout --nonet /usr/share/xml/docbook/xsl-stylesheets-*/manpages/docbook.xsl ${file}
done
done
}
package() {
install -d "${pkgdir}/usr/share/man/man3"
for manpages in ${_mandirs[@]}; do
cd "${srcdir}/${pkgname}/${manpages}"
install -m644 *.3G "${pkgdir}/usr/share/man/man3/"
done
# license
install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
I had to install some extra packages on my Debian Stretch box to build the documentation:
sudo apt-get install xsltproc docbook-xsl docbook-xsl-ns w3-dtd-mathml docbook-mathml
精彩评论