ctemplate

  • Owner: OlafvdSpek/ctemplate
  • Platform:
  • License:: BSD 3-Clause "New" or "Revised" License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Welcome to the C++ CTemplate system!

This library provides an easy to use and lightning fast text templating system
to use with C++ programs.

It was originally called Google Templates, due to its origin as the template
system used for Google search result pages. Now it has a more general name
matching its community-owned nature.

Documentation

Refer to the Project
Documentation

to learn how to use the CTemplate system.

There is also a
HOWTO
and
Examples.

Compiling

To compile test applications with these classes, run ./autogen.sh && ./configure followed by
make on unixoid platforms like Linux or MacOSX.

To install these header files on your system, run make install.

See INSTALL for more details.

This code should work on any modern C++ system. It has been tested on Linux
(Ubuntu, Fedora, RedHat), Solaris 10 x86, FreeBSD 6.0, OS X 10.3 and 10.4, and
Windows under both VC++7 and VC++8.

There are a few Windows-specific details; see README.windows for more
information.

CTemplate and Threads

The ctemplate library has thread support, so it works properly in a threaded
environment.

For this to work, if you link libraries with -lctemplate you may also need to
add -pthread (or, on some systems, -pthreads, and on others, -lpthread) to
get the library to compile. If you leave out the -pthread, you'll see errors
like this:

symbol lookup error: /usr/local/lib/libctemplate.so.0: undefined symbol: pthread_rwlock_init

If your code isn't multi-threaded, you can instead use the ctemplate_nothread
library: -lctemplate_nothreads

To summarize, there are two ways to link in ctemlpate in non-threaded
applications. For instance:

  1. Thread safe build:gcc -o my_app my_app.o -lctemplate -pthread

  2. Unthreaded code:gcc -o my_app my_app.o -lctemplate_nothreads

If your application uses threads, you should use form (1).

Main metrics

Overview
Name With OwnerOlafvdSpek/ctemplate
Primary LanguageC++
Program languageShell (Language Count: 9)
Platform
License:BSD 3-Clause "New" or "Revised" License
所有者活动
Created At2015-03-12 17:28:39
Pushed At2023-09-02 15:33:06
Last Commit At2023-09-02 17:33:05
Release Count29
Last Release Namectemplate-2.4 (Posted on )
First Release Namectemplate-0.1 (Posted on )
用户参与
Stargazers Count357
Watchers Count21
Fork Count91
Commits Count161
Has Issues Enabled
Issues Count137
Issue Open Count21
Pull Requests Count9
Pull Requests Open Count6
Pull Requests Close Count3
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private