The symptoms are:

In file included from app.c:21:0:
/usr/include/asterisk/version.h:1:2: error: #error "Do not include 'asterisk/version.h'; use 'asterisk/ast_version.h' instead."
app.c: In function 'app_register':
app.c:162:3: warning: passing argument 2 of 'ast_register_application2' from incompatible pointer type [enabled by default]
In file included from app.c:20:0:
/usr/include/asterisk/module.h:458:5: note: expected 'int (*)(struct ast_channel *, const char *)' but argument is of type 'int (*)(struct ast_channel *, void *)'
make: *** [app.o] Error 1

Solution:

    Download patched sources
    autoconf and autmake should be installed
    uzip sources
    cd to unzipped folder
    issue commands: aclocal, autoconf, automake -a
    install chan_dongle as usual ./configure, make, make install.

then I got next error

# sudo make install
./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
strip chan_dongle.so
/usr/bin/install -c -m 755 chan_dongle.so
/usr/bin/install: missing destination file operand after `chan_dongle.so'
Try `/usr/bin/install --help' for more information.
make: *** [install] Error 1

Error because on chan_dongle installed on 64 bit OS. In that case DESTDIR should be: DESTDIR="/usr/lib64/asterisk/modules

after that you can run asterisk console and load module:

CLI> module load chan_dongle.so

but then next error comes:

WARNING[24644]: chan_dongle.c:218 opentty: unable to open /dev/ttyUSB2: Permission denied
that because of wrong permissions.

That usually happens when asterisk running in non root mode. Set the correct permissions to /dev/ttyUSB

#chmod 666 /dev/ttyUSB*

after all chan_dongle is up and runnin, but after adding second dongle, problem with permissions comes back. The silution is to set permission automatically. Create file in /etc/udev/rules.d/92-dongle.rules
and add

KERNEL=="ttyUSB*", MODE="0666", OWNER="asterisk", GROUP="uucp"