Building a GNOME module from the repository

Hello Community,

I am hoping that I might ask for assistance with the task of building a GNOME module from the repository. I hope I have used the correct terminology. Said another way, what I am trying to do is “run” a project made on GitHub as an application on my computer as a user. Specifically, I would like to use this wonderful piece of work: OCRFeeder, by Joaquim Rocha. To clone the project to my computer and be able to compile/build/make it, I have the following tools installed: Visual Studio Code, GitHub Desktop and Git for Windows (Git Bash). I have a Windows 64bit OS. So far I have managed to clone the project to my computer. Using Git Bash, I attempted to build the project following the instructions in OCRFeeder’s READ ME file (snip shown below).

Building from git
==================

$ git clone git://git.gnome.org/ocrfeeder
$ cd ocrfeeder
$ ./autogen.sh
$ make

Unfortunately, I am getting stuck on the $ ./autogen.sh instruction. I get an error message that reads:

which: no gnome-autogen.sh in (/c/very-long-path...) You need to install gnome-common module and make sure the gnome-autogen.sh script is in your $PATH.

I looked up gnome-common and I think this is what I need https://github.com/GNOME/gnome-common. Where I am really stuck is how to use gnome-common to build OCRFeeder. The READ ME in gnome-common seems to give a cut and past code snippet that will enable building of a GNOME based module (snip shown below).

To make use of the common autogen script, create a stub autogen.sh
script in your module that looks something like this:

---- Cut Here ----
#!/bin/sh
srcdir=`dirname $0`
[-z "$srcdir"] && srcdir=.

if [! -f "$srcdir/configure.ac"]; then
 echo "$srcdir doesn't look like source directory for $PKG_NAME" >&2
 exit 1
fi

which gnome-autogen.sh || {
	echo "You need to install gnome-common from GNOME Git"
	exit 1
}

. gnome-autogen.sh "$@"
---- Cut Here ----

Then put the following in your configure.ac or configure.in file:
  AC_CONFIG_MACRO_DIR([m4])
  AC_SUBST([ACLOCAL_AMFLAGS], ["-I $ac_macro_dir \${ACLOCAL_FLAGS}"])

I must admit that I really don’t know what is meant by create a stub autogen.sh. I am not sure where to cut and paste the code (and if it needs to be edited in any way). I am also uncertain where to put the two lines at the end within the configure.ac/in file. 

I may be on the right track and have all of the puzzle pieces, I just can’t seem to assemble them. Also, I may be completely on the wrong track. Perhaps there is a simple way to build/make/compile and execute within GitHub desktop? Any help the community can provide, I am most appreciative! If it helps, here is a wiki for OCRFeeder: OCRFeeder Wiki.  Thank you.

The .sh extension indicates that the autogen.sh script is a Bourne Shell script, in other words a script designed to be executed by the Bourne Shell that is the basic-level command-line shell on many, many Unix versions. It’s role on Unix systems is similar to COMMAND.COM on Windows machines. Additionally, GNOME is a window manager for Linux systems, similar to the Windows Explorer for the Windows operating system, though I understand there are ways to run GNOME on top of Windows.

In any case, unless you’ve already got GNOME running on your Windows machine and have a set of Unix command-line tools installed (perhaps like the Windows subsystem for Linux) to run the autogen.sh script, there’s nothing that GitHub Desktop is going to be able to do to help.

If you need help with building or running a project that you find on GitHub, the best place to seek support for it is by following the instructions in the README or other documentation in that repository.

I hope that helps!

1 Like

lee-dohm,

Thank you very much for kindly taking the time to respond to my inquiry. Your response does help a lot. I had not considered that I had the wrong operating system. Your links were also helpful resources. If anyone else has the same issue as me, I hope they find this thread. 

1 Like