Doxygen generated latex failing with pdflatex - doxygen

I have generated latex with doxygen, then I run the make pdf command.
This is the first time I tried it.
[mysite.lan] (liberz) latex> make pdf
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf
pdflatex refman
This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013)
restricted \write18 enabled.
kpathsea: Running mktexfmt pdflatex.fmt
/usr/bin/mktexfmt: line 395: /usr/share/texlive/texmf/texconfig/tcfmgr: No such file or directory
fmtutil: config file `fmtutil.cnf' not found.
I can't find the format file `pdflatex.fmt'!
make: *** [refman.pdf] Error 1
I looked at the mkexfmt command and it is trying to invoke tcfmgr as a command.
The /usr/share/texlive/texmf/texconfig folder exists, but there is no tcfmgr command in it.
Previously I was getting the pdflatex command was not found, so that is recently installed.
[edit to answer version information question] I am sure I need to install more tools, but it is not clear what packages I need to install. I am using CentOS 7.1.
> pdflatex -version
pdfTeX 3.1415926-2.5-1.40.14 (TeX Live 2013)
kpathsea version 6.1.1
Copyright 2013 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
Compiled with libpng 1.5.13; using libpng 1.5.13
Compiled with zlib 1.2.7; using zlib 1.2.7
Compiled with poppler version 0.22.5

Doxygen PDF output depends on pdflatex command, which in CentOS 7 is provided by texlive-latex-bin-bin package, but runnig make pdf invokes yet another command, tcfmgr, which is provided by texlive-texconfig, hence, run the following command to install those dependencies:
yum install -y texlive-latex-bin-bin texlive-texconfig
You can check which packages provide any necessary file:
$ yum --quiet provides "*bin/pdflatex"
...
2:texlive-latex-bin-bin-svn14050.0-38.20130427_r30134.el7.noarch :
Binaries for latex-bin
Repo : base
Matched from:
Filename : /usr/bin/pdflatex
$ yum --quiet provides /usr/share/texlive/texmf/texconfig/tcfmgr
...
2:texlive-texconfig-svn29349.0-38.el7.noarch : texconfig package
Repo : base
Matched from:
Filename : /usr/share/texlive/texmf/texconfig/tcfmgr
But even with these 2 basic requirements satisfied, I found that many other messages followed, and the whole list to reduce warnings was:
xargs <<_EOF_ yum -y install
texlive-latex-bin-bin
texlive-texconfig
texlive-metafont-bin
texlive-iftex
texlive-cm
texlive-xtab
texlive-multirow
texlive-ec
texlive-sectsty
texlive-fancyhdr
texlive-natbib
texlive-tocloft
texlive-tex4ht
texlive-helvetic
texlive-pslatex
texlive-courier
texlive-times
texlive-metapost
texlive-symbol
texlive-rsfs
texlive-dvips
texlive-base
texlive-makeindex-bin
_EOF_
...
Transaction Summary
==============================================================================================================================
Install 23 Packages (+132 Dependent packages)
Total download size: 43 M
Installed size: 134 M
...
And yet Tex2PDF conversion produces many warnings, but the resulting document is quite satisfatory.
[Edited on Nov 8th]
If you want a "recommended" package installation, you might choose one of these "virtual" packages that require other sets of packages, to compose a more "complete" Latex environment, in order of higher comprehensiveness:
texlive-collection-latex : LaTeX fundamental packages
texlive-collection-latexrecommended : LaTeX recommended packages
texlive

Related

Showing a list of software with LGPL during boot

I remember seeing a list of software components with LGPL licenses during the start up of Linux root file system built with Yocto Project. I can't seem to figure out what enables this, even after going through the Mega Manual.
NOTICE: This file system contains the following GPLv3 packages:
autoconf
bash-dev
bash
binutils
cifs-utils
cpio
cpp-symlinks
cpp
dosfstools
elfutils
g++-symlinks
g++
gawk-dev
gawk
gcc-symlinks
gcc
gdb
gdbc6x
gdbserver
gettext-dev
gettext
gzip
libbfd
libcairo-dbg
libcairo-perf-utils
libdw1
libelf1
libgdbm-compat4
libgdbm-dev
libgdbm4
libgettextlib
libgettextsrc
libgmp-dev
libgmp10
libgmpxx4
libidn11
libmpc3
libmpfr4
libreadline-dev
libreadline7
libunistring2
m4-dev
m4
make
nettle-dev
nettle
parted
python3-pycairo-dev
python3-pycairo
which
If you do not wish to distribute GPLv3 components please remove
the above packages prior to distribution. This can be done using
the opkg remove command. i.e.:
opkg remove <package>
Where <package> is the name printed in the list above
NOTE: If the package is a dependency of another package you
will be notified of the dependent packages. You should
use the --force-removal-of-dependent-packages option to
also remove the dependent packages as well
Found my answer - it's from arago-gpl-notice from meta-arago. It only displays GPLv3 also.

How to generate uuid in solaris 11?

How to generate UUID in solaris 11?
In Solaris 10 i was using makeuuid command to generate.
I can not find it in solaris 11 while it exist as per oracle documents
https://docs.oracle.com/cd/E23824_01/html/821-1462/makeuuid-1m.html
but I can't find it, also I can not find the container package.
You can also use the very small Python program below. Would this help?
$ cat bin/uuidgen.py
#!/usr/bin/python
import uuid
print(uuid.uuid4())
$ uuidgen.py
c4f248e9-c398-4054-9208-6badd366f857
Searching for makeuuid in all Solaris 11 packages:
# pkg search -flr makeuuid
INDEX ACTION VALUE PACKAGE
basename file usr/bin/makeuuid pkg:/system/management/product-registry#0.5.11-0.151.0.1
OK, what about that package?
# pkg info -r pkg:/system/management/product-registry
Name: system/management/product-registry
Summary:
State: Not installed (Obsolete)
Publisher: solaris
Version: 0.5.11
Build Release: 5.11
Branch: 0.171
Packaging Date: August 1, 2011 04:48:45 PM
Size: 5.45 kB
FMRI: pkg://solaris/system/management/product-registry#0.5.11,5.11-0.171:20110801T164845Z
Note that the package is obsolete. You can try force-installing it, but the Solaris 11 package system might remove it on your next update.
I'm not sure why it's obsolete, but the man page you linked is part of the DCE/RPC OpenGroup specification from 1997. The version string 0.5.11-0.151.0.1 seems to indicate an old OpenSolaris/Nevada package, likely from SNV version 151.
Note that makeuuid is not in the Solaris 11.3 man pages section 1M.
If you really want that makeuuid binary, you should be able to download the package locally following this procedure: https://serverfault.com/a/348265/283415 Once you have the package on your local system, you should be able to take it apart and pull out the makeuuid binary. Note that grabbing the binary from the package won't install any dependencies, and the makeuuid binary from that old package may not work or it might work improperly on your later system.

idn2.h: No such file or directory

I am on 64-bit Centos 6.6 and want to install libidn2-devel. I tried yum install libidn2-devel and that didn't work. I tried downloading rpms from various websites from Internet(resolving recursive dependencies manually!)
(Not so) Soon I stuck at the one of the dependencies
libidn2.so.0()(64bit) is needed by libidn2-devel-0.10-1.sdl7.x86_64
which I could not find anywhere on the Internet (for CentOS).
Eventually, I downloaded the source and tried to build it.
wget -c ftp://alpha.gnu.org/gnu/libidn/libidn2-0.10.tar.gz
tar -xvzf libidn2-0.10.tar.gz
./configure
make
Success!
However, when I used it to run a module, it gives me
error: idn2.h: No such file or directory
<idn2_variable> was not declared in this scope
PS : RPM seems weird
$ rpm -q libidn2-devel
package libidn2-devel is not installed
$ rpm -q libidn2
libidn2-2.0.4-1.el6.x86_64
libidn2-devel is provided via the EPEL Repo
Name : libidn2-devel
Arch : x86_64
Version : 2.0.4
Release : 1.el6
Size : 54 k
Repo : epel
Summary : Development files for libidn2
URL : https://www.gnu.org/software/libidn/#libidn2
License : (GPLv2+ or LGPLv3+) and GPLv3+
Description : The libidn2-devel package contains libraries and header files for
: developing applications that use libidn2.
The wiki page here will give you some more details, and if you want to install EPEL for use with yum then you should download (and install) this rpm to your system then check in /etc/yum.repos.d/epel.repo for the config file it will leave. Inside there you need to check the [EPEL] section has the line enabled=1 (I think its disabled by default)
You may want/need to clean up the stuff you have tried to manually install though so you avoid any problems with updates etc.

Install GD Library on RedHat machine for twiki

My ultimate goal is to run a twiki website for my research group.
I have space on RedHat server that is running Apache, etc., but upon which I do not have root access. Since I cannot install perl modules with the current permissions, I've decided to manually install a local version of perl. Got that working no problem. The following modules are required to get twiki to work:
FreezeThaw - http://search.cpan.org/~ilyaz/FreezeThaw
CGI::Session - http://search.cpan.org/~markstos/CGI-Session
Error - http://search.cpan.org/~shlomif/Error
GD - http://search.cpan.org/~lds/GD
HTML::Tree - http://search.cpan.org/~petek/HTML-Tree
Time-modules - http://search.cpan.org/~muir/Time-modules
I have installed FreezeThaw, CGI, Error, and it fails on GD with the following error:
UNRECOVERABLE ERROR Could not find gdlib-config in the search path.
Please install libgd 2.0.28 or higher. If you want to try to
compile anyway, please rerun this script with the option --ignore_missing_gd.
In searching for how to get around this newest obstacle, I found a previous SO question: How to install GD library with Strawberry Perl asked about installing this and the top answer suggested manually compiling gdlib. You'll note, however, that that link is broken. The base site: http://www.libgd.org/ is basically down saying to go to the project's bitbucket page.
So I got the tarball from that page and am trying to install it. The following problems occur when I follow the instructions included. README.TXT says: "If the sources have been fetched from CVS, run bootstrap.sh [options]."
Running bootstrap.sh yields:
configure.ac:64: warning: macro `AM_ICONV' not found in library
configure.ac:10: required directory ./config does not exist cp: cannot
create regular file `config/config.guess': No such file or directory
configure.ac:11: installing `config/config.guess' configure.ac:11:
error while copying cp: cannot create regular file
`config/config.sub': No such file or directory configure.ac:11:
installing `config/config.sub' configure.ac:11: error while
copying cp: cannot create regular file `config/install-sh': No such
file or directory configure.ac:28: installing `config/install-sh'
configure.ac:28: error while copying cp: cannot create regular
file `config/missing': No such file or directory configure.ac:28:
installing `config/missing' configure.ac:28: error while copying
configure.ac:577: required file `config/Makefile.in' not found
configure.ac:577: required file `config/gdlib-config.in' not found
configure.ac:577: required file `test/Makefile.in' not found
Makefile.am:14: Libtool library used but `LIBTOOL' is undefined
Makefile.am:14: The usual way to define `LIBTOOL' is to add
AC_PROG_LIBTOOL' Makefile.am:14: to configure.ac' and run
aclocal' and autoconf' again. Makefile.am:14: If `AC_PROG_LIBTOOL'
is in `configure.ac', make sure Makefile.am:14: its definition is in
aclocal's search path. cp: cannot create regular file
`config/depcomp': No such file or directory Makefile.am: installing
`config/depcomp' Makefile.am: error while copying Failed
And it says I should also install the following 3rd party libraries:
zlib, available from http://www.gzip.org/zlib/
Data compression library
libpng, available from http://www.libpng.org/pub/png/
Portable Network Graphics library; requires zlib
FreeType 2.x, available from http://www.freetype.org/
Free, high-quality, and portable font engine
JPEG library, available from http://www.ijg.org/
Portable JPEG compression/decompression library
XPM, available from http://koala.ilog.fr/lehors/xpm.html
X Pixmap library
Which I am ignoring for now.
Switching to the generic instructions it says follow the advice in the INSTALL file; which says: "cd to the directory containing the package's source code and type ./configure to configure the package for your system." Which flat does not work: I've cd'ed into every directory of the tarball and running that command does nothing.
So, trying to install twiki required me to install perl, which required me to install the perl modules: FreezeThaw, CGI, Error, HTML, Time-modules, and GD -- which itself required me to install gdlib -- which further suggested I install zlib, libpng, FreeType 2.x, JPEG library, and XPM. And of course, I'm stuck at the installing gdlib stage.
My question is: what other process can possibly demean humanity to such a level? I cannot fathom the depths of cruelty that lay ahead of me as I dive ever deeper into this misery onion. Should I just end it all? Can meaning be brought from this madness? Will the sun come up tomorrow, and if so, does it even matter?
But seriously, any suggestions on what to do differently/better would be much appreciated -- I can't remember what a child's laughter sounds like anymore.
Install the package gd-devel, it contains /usr/bin/gdlib-config.
This should work:
sudo apt-get -y install libgd2-xpm-dev build-essential

How do I find which rpm package supplies a file I'm looking for?

As an example, I am looking for a mod_files.sh file which presumably would come with the php-devel package. I guessed that yum would install the mod_files.sh file with the php-devel x86_64 5.1.6-23.2.el5_3 package, but the file appears to not to be installed on my filesystem.
How do I find out which package installs a specific file? I'm looking for where I have not necessarily already locally downloaded the package which may include the file that I'm looking for.
I'm using CentOS 5.
This is an old question, but the current answers are incorrect :)
Use yum whatprovides, with the absolute path to the file you want (which may be wildcarded). For example:
yum whatprovides '*bin/grep'
Returns
grep-2.5.1-55.el5.x86_64 : The GNU versions of grep pattern matching utilities.
Repo : base
Matched from:
Filename : /bin/grep
You may prefer the output and speed of the repoquery tool, available in the yum-utils package.
sudo yum install yum-utils
repoquery --whatprovides '*bin/grep'
grep-0:2.5.1-55.el5.x86_64
grep-0:2.5.1-55.el5.x86_64
repoquery can do other queries such as listing package contents, dependencies, reverse-dependencies, etc.
To know the package owning (or providing) an already installed file:
rpm -qf myfilename
The most popular answer is incomplete:
Since this search will generally be performed only for files from installed packages, yum whatprovides is made blisteringly fast by disabling all external repos (the implicit "installed" repo can't be disabled).
yum --disablerepo=* whatprovides <file>
You go to http://www.rpmfind.net and search for the file.
You'll get results for a lot of different distros and versions, but quite likely Fedora and/or CentOS will pop up too and you'll know the package name to install with yum
Well finding the package when you are connected to internet (repository) is easy however when you only have access to RPM packages inside Redhat or Centos DVD (this happens frequently to me when I have to recover a server and I need an application) I recommend using the commands below which is completely independent of internet and repositories. (supposably you have lots of uninstalled packages in a DVD).
Let's say you have mounted Package folder in ~/cent_os_dvd and you are looking for a package that provides "semanage" then you can run:
for file in `find ~/cent_os_dvd/ -iname '*.rpm'`; do rpm -qlp $file |grep '.*bin/semanage'; if [ $? -eq 0 ]; then echo "is in";echo $file ; fi; done
Using only the rpm utility, this should work in any OS that has rpm:
rpm -q --whatprovides [file name]
Ref. https://www.thegeekdiary.com/how-to-find-which-rpm-package-provides-a-specific-file-or-library-in-rhel-centos/
You can do this alike here but with your package. In my case, it was lsb_release
Run: yum whatprovides lsb_release
Response:
redhat-lsb-core-4.1-24.el7.i686 : LSB Core module support
Repo : rhel-7-server-rpms
Matched from:
Filename : /usr/bin/lsb_release
redhat-lsb-core-4.1-24.el7.x86_64 : LSB Core module support
Repo : rhel-7-server-rpms
Matched from:
Filename : /usr/bin/lsb_release
redhat-lsb-core-4.1-27.el7.i686 : LSB Core module support
Repo : rhel-7-server-rpms
Matched from:
Filename : /usr/bin/lsb_release
redhat-lsb-core-4.1-27.el7.x86_64 : LSB Core module support
Repo : rhel-7-server-rpms
Matched from:
Filename : /usr/bin/lsb_release`
Run to install: yum install redhat-lsb-core
The package name SHOULD be without number and system type so yum packager can choose what is best for him.