Installing FontForge from the source on GitHub - linux

I'm trying to install the latest version of FontForge from the source. I know the whole procedure of ./configure, make, and make install, but there's no configure script in the source package, just configure.ac, which seemingly needs to be processed with autoconf, but autoconf fails to do so. When I run autoconf, it says something about possibly undefined macro. After I googled the error, it led me to trying aclocal ; autoheader; automake ; autoconf which didn't work either.

You need to invoke the autogen.sh script to generate the configure script. As a pre-requisite, you would need autoconf, automake and libtool installed.
$ ./autogen.sh
Preparing the fontforge build system...please wait
Found GNU Autoconf version 2.69
Found GNU Automake version 1.12.1
Found GNU Libtool version 2.4.2
Automatically preparing build ... done
The fontforge build system is now prepared. To build here, run:
./configure
make

Just run the autogen.sh script, it will perform all the necessary steps. See the Auto-Book for an explanation.

The configure script isn't present in the git master; that's normal. To create it, run
./autogen.sh
I've added an INSTALL.git file to the git repo so this will be clear to other users.
https://github.com/fontforge/fontforge/blob/master/INSTALL.git

Related

How to install older gcc package using APT from a repository?

I have GCC v9. But I'm trying to install a GCC 4.8.1 version to test a library compilation on that very old version of GCC.
The version is not available in the official Ubuntu repos,it is deprecated, but I've found it in other mirrors as told by the official GCC website. This one seems like popular one:
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
I have very little knowledge of linux package systems except for the basic. I want to keep both versions. So I should do this:
sudo apt -y install gcc-4.8.1 gcc-9
The reason why I want to use this command and not install it from the file, apart from the difficulty of doing that for me, is that I'm following a guide in order to have several GCCs on my system:
https://www.fosslinux.com/39386/how-to-install-multiple-versions-of-gcc-and-g-on-ubuntu-20-04.htm
When I add the url to the sources.list file seems like it is working.
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update -q
But when I try to call the install with gcc-4.8.1 or gcc-4.8 , or even gcc-4 the package doesn't exist.
Package gcc-4.8 is not available, but is referred to by another
package. This may mean that the package is missing, has been
obsoleted, or is only available from another source E: Package
'gcc-4.8' has no installation candidate
Also, I don't know if websites like these can be added to the repos list in order to find the package using APT:
http://www.netgull.com/gcc/releases/gcc-4.8.1/
[EDIT]
I downloaded the package from the website I linked. I have no idea how to install this by hand. If only I could find a repository that could help me with this... I have no idea how to make APT help me with the installation.
But I'm trying to install a GCC 4.8.1 version to test a library compilation on that very old version of GCC.
Developers have tools up their sleeve so they don't have to install dependencies and bloating their systems for every library (and every configuration of that library!) they want to try out and test.
Use docker. You could write for example a testing script, assuming your project uses make:
# test_my_lib_in_gcc-4.8.sh
#!/bin/sh
docker run -ti --rm -v $PWD:/project -w /project gcc:4.8 -u $UID:$GID sh <<EOF
make && make test
EOF
that will compile and test your application in using 4.8 gcc. Consider how easy it is to change gcc version - just change the number. You could test your library in gcc, in different versions, and using other compilers and on different distributions to make sure it works for others. If you're a developer of the library, write an automatized CI pipeline that would automatically test your application each commit in specific docker environment, using ex. https://docs.gitlab.com/ee/ci/README.html or https://travis-ci.org/ .

LFS CoreUtils-8.30 fails with aclocal-1.15 missing

I have a standard core i5 laptop and I'm trying to make LFS (Linux From Scratch) it has all worked fine (after a couple of retries) until I try and make Coreutils-8.30 when I do the Make I get:
lfs#robert-HP-EliteBook-8760w:/mnt/lfs/sources/coreutils-8.30$ make
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /mnt/lfs/sources/coreutils-8.30/build-aux/missing aclocal-1.15 -I m4
/mnt/lfs/sources/coreutils-8.30/build-aux/missing: line 81: aclocal-1.15: command not found
WARNING: 'aclocal-1.15' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
Makefile:6034: recipe for target 'aclocal.m4' failed
make: *** [aclocal.m4] Error 127
I've gone around and around on this and I'm not getting anywhere. I've found a couple of references to gettext but that hasn't helped.
Thanks for any guidance.
Just got through the same issue. You need to install libtool-bin, automake and makeinfo
sudo apt-get install libtool-bin automake makeinfo
Then run autoreconf -f -i in the mpfr directory. After that you can run ./configure etc.
I ran into this issue when I applied the patch for coreutils that was provided in the downloads. I noticed the instructions did not tell me to apply this patch at this step so I tried to build again without the patch applied and it worked.
I just met and solved this problem,My solution is not necessarily the best。
This questions because you don't have "aclocal" tools with version 1.15,
This tools provided by automake-1.15, which depended by autoconf-2.69 or later.
So My solution is installing autoconf-2.69 and automake-1.15:
1. installing autoconf-2.69
tar -xvf autoconf-2.69.tar.xz
./configure --prefix=/tools
make && make install
2. installing automake-1.15
tar -xvf automake-1.15.tar.xz
./configure --prefix=/tools
make && make install
then you can compile your coreutils-8.30
Check if autoinfo from gettext is installed OK.
This error when building coreutils is caused by absence of autopoint.

How do I compile Autoconf from git without already having Autoconf

I am on an OS that doesn't currently have Autoconf so I am trying to install from source using git clone git://git.sv.gnu.org/autoconf but there is no configure in that folder. I know there are other ways like using a package manager or downloading the tar version with the existing configure file.
But how do I compile Autoconf if I don't already have autoconf installed?
But how do I compile Autoconf if I don't already have autoconf installed?
Install autoconf from a tarball or package manager and follow the steps in README-hacking, e.g.:
$ autoreconf -vi
will generate configure. Implicity, the answer to your question is: you don't, if you follow the steps in README-hacking.
I've always grabbed a tarball if a package wasn't available on a platform to get a working copy of autoconf.

Cygwin and "failed to run aclocal: No such file or directory"

I'm trying to test our Autotools stuff on Cygwin. When I open a prompt:
$ autoreconf --install --force
Can't exec "aclocal": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 326.
autoreconf-2.69: failed to run aclocal: No such file or directory
I re-ran the Cygwin package manager and verified autoconf, automake and libtool were installed. There is no package aclocal to install.
Searching is not returning useful hits in the context of Cygwin.
What is the problem, and how do I fix it?
So it looks like it is not enough to install Autoconf 2.69, Automake 1.15 and Libtool. There are other packages that need to be installed, but Cygwin does not install them.
First, I needed the package called automake: wrapper for multiple versions of Automake. Second, I needed the package called libtool: generic library support script.
The package called autoconf: wrapper for multiple versions of Autoconf was already installed, so it did not need to be installed.
If the Autools package needs them, then it should probably install them when users select packages like Autoconf 2.69 and Automake 1.15.

WARNING: 'aclocal-1.13' is missing on your system "Code::Blocks"

During my installation of Code::Blocks on my kali-linux machine
after executing ./configure command on my program directory , everything is okay until i try to make my program .
here is my error message :
WARNING: 'aclocal-1.13' is missing on your system.
You should only need it if you modified 'acinclude.m4' or 'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package: http://www.gnu.org/software/automake
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
http://www.gnu.org/software/autoconf
http://www.gnu.org/software/m4/
http://www.perl.org/
make: *** [aclocal.m4] Error 127
i tried every single solution on the Internet
nothing worked , including autoreconf commands
installing the automake tool , libtool which is already installed on my up-dated machine . also tried to install what the error message says which is m4 and perl but i found that they also are installed
if possible to provide me another way to install Code:blocks IDE , i'd be very happy , thanks .
Install automake.
sudo ln -s /usr/bin/aclocal /usr/bin/aclocal-1.13
sudo ln -s /usr/bin/automake /usr/bin/automake-1.13
Try to install automake
sudo apt-get install automake
It includes the library you're looking for.
I had same problem compiling PCRE and it did the trick.
Did you change anything such as the m4 files? That might be the problem, you changed something so that the compiler can't read it.

Resources