A functional version of Boost (C++ libraries) is required.

Standard Installation
In Linux, just type the following commands:
$ ./configure
$ make
$ make install

Individual Installation
By default, "make install" will install all the files in "/usr/local/bin", "/usr/local/lib" etc. You can specify an installation prefix other than "/usr/local" using "--prefix" to "configure" execution, for instance "--prefix=$HOME".
$ ./configure --prefix=$HOME

Database file generation
Prepare a database file in which gene expression files in CM-format are just concatenated as follows:

>GSM1269135 |GPL16791 (HiSeq 2500)|H.sapiens|8000301-738 (Muscle, Myoblast_T24 (Skeletal muscle))
ENSG00000000003:469 ENSG00000000005:0 ENSG00000000419:0 ...
ENSG00000283122:0 ENSG00000283123:8 ENSG00000283125:0
>GSM1269137 |GPL16791 (HiSeq 2500)|H.sapiens|8000301-738 (Muscle, Myoblast_T24 (Skeletal muscle))
ENSG00000000003:237 ENSG00000000005:0 ENSG00000000419:45 ...
ENSG00000283122:0 ENSG00000283123:0 ENSG00000283125:0
GSM1269130 |GPL16791 (HiSeq 2500)|H.sapiens|8000301-738 (Muscle, Myoblast_T24 (Skeletal muscle))

Generate index file, "db_geneIds.txt".
$ ./ db.CM | sort | uniq > db_geneIds.txt

Generate binary file of the database, "db.bin".
$ ./runGerIndexer db_geneIds.txt < db.CM > db.bin

Run CELLBLAST profile matcher.
Prepare query file in CM-format and run CELLBLAST profile matcher as follows.
$ ./runGerMatcher db.bin query.CM > result.txt

Example result
Sample ID P-value Spearman's rank correlation coefficient # genes used for matching Header information of CM-format in database file
GSM1901455 0 1 588 GSM1901455 |GPL11154 (HiSeq 2000)|H.sapiens|3110001010000000000000 (Pancreas, Pancreatic islet cell (Pancreatic islet))
GSM1901456 1.59428e-13 0.558135 588 GSM1901456 |GPL11154 (HiSeq 2000)|H.sapiens|3110001010000000000000-020 (Pancreas, Alpha cell (Pancreatic islet))
GSM1901467 1.15452e-12 0.55035 588 GSM1901467 |GPL11154 (HiSeq 2000)|H.sapiens|3110001010000000000000-212 (Pancreas, PP cell (Pancreatic islet))
... ... ... ... ...