CppBlog установка на Ubuntu

Уровень сложности: 

CppBlog - это CMS на языке C++ от разработчиков фреймворка CppCMS. Сборка и компиляция проекта CppBlog требует наличия фреймворка CppCMS. Здесь описан процесс установки CppBlog на локальный компьютер с Ubuntu 14.04.

Установка компонентов

Перед установкой CppBlog необходимо установить:

Установка Imagemagick:

sudo apt-get install imagemagick libmagick++-dev

 

Установка требуемых пакетов

При запуске make возникают сообщения с требованиями приложений: ICU, OpenSSL. Эти приложения доступны в пакетах:

sudo apt-get install libicu-dev libssl-dev

 

Также для скачивания исходников с использованием команды svn, установите subversion:

sudo apt-get install subversion

 

Сборка и установка CppBlog, официальный мануал

Процесс описан на официальном сайте: http://cppcms.com/wikipp/en/page/install_cppblog

Замечания по установке CppBlog

  1. Загружать CppBlog нужно в папку фреймворка CppCMS и собирать в этой папке, иначе возникает ошибка "не найден CMakeLists.txt"
  2. В предложенном документе по установке CppBlog пропущена команда перехода в папку build после её создания командой "mkdir build"

 

Русский мануал по установке CppBlog

После установки всех зависимостей и фреймворка CppCMS, перейдите в папку с исходниками CppCMS.

В папку, где расположены исходники CppCMS, скачайте, распакуйте CppBlog, а затем соберите проект и установите:

  1. svn co https://cppcms.svn.sourceforge.net/svnroot/cppcms/blog/trunk cppblog
  2. cd cppblog
  3. mkdir build
  4. cd build
  5. cmake ..
  6. make
  7. make install

 

Лог процесса сборки CppBlog

Сборка выполнялась на локальном компьютере под Ubuntu 14.04.

make

[ 3%] Generating contendend.cpp
Scanning dependencies of target contendend
[ 6%] Building CXX object CMakeFiles/contendend.dir/contendend.cpp.o
Linking CXX shared library libcontendend.so
[ 6%] Built target contendend
[ 10%] Generating admin.cpp
[ 13%] Generating feed.cpp
Scanning dependencies of target cppblog
[ 16%] Building CXX object CMakeFiles/cppblog.dir/apps/blog/master.cpp.o
[ 20%] Building CXX object CMakeFiles/cppblog.dir/apps/blog/post.cpp.o
[ 23%] Building CXX object CMakeFiles/cppblog.dir/apps/blog/page.cpp.o
[ 26%] Building CXX object CMakeFiles/cppblog.dir/apps/blog/blog.cpp.o
[ 30%] Building CXX object CMakeFiles/cppblog.dir/apps/blog/summary.cpp.o
[ 33%] Building CXX object CMakeFiles/cppblog.dir/apps/feed/feed.cpp.o
[ 36%] Building CXX object CMakeFiles/cppblog.dir/apps/basic_master.cpp.o
[ 40%] Building CXX object CMakeFiles/cppblog.dir/apps/captcha.cpp.o
[ 43%] Building CXX object CMakeFiles/cppblog.dir/apps/config.cpp.o
[ 46%] Building CXX object CMakeFiles/cppblog.dir/apps/main.cpp.o
[ 50%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/admin.cpp.o
[ 53%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/users.cpp.o
[ 56%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/summary.cpp.o
[ 60%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/page.cpp.o
[ 63%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/post.cpp.o
[ 66%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/caching.cpp.o
[ 70%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/options.cpp.o
[ 73%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/comment.cpp.o
[ 76%] Building CXX object CMakeFiles/cppblog.dir/apps/admin/categories.cpp.o
[ 80%] Building CXX object CMakeFiles/cppblog.dir/feed.cpp.o
[ 83%] Building CXX object CMakeFiles/cppblog.dir/admin.cpp.o
Linking CXX executable cppblog
[ 83%] Built target cppblog
Scanning dependencies of target cppblog_migrate
[ 86%] Building CXX object CMakeFiles/cppblog_migrate.dir/sql/migrate.cpp.o
Linking CXX executable cppblog_migrate
[ 86%] Built target cppblog_migrate
Scanning dependencies of target create-po
[ 90%] Generating locale/he/LC_MESSAGES/cppblog.mo
[ 93%] Generating locale/zh/LC_MESSAGES/cppblog.mo
[ 93%] Built target create-po
[ 96%] Generating orangesky.cpp
Scanning dependencies of target orangesky
[100%] Building CXX object CMakeFiles/orangesky.dir/orangesky.cpp.o
Linking CXX shared library liborangesky.so
[100%] Built target orangesky

make install

[ 6%] Built target contendend
[ 83%] Built target cppblog
[ 86%] Built target cppblog_migrate
[ 93%] Built target create-po
[100%] Built target orangesky
Install the project...
-- Install configuration: "RelWithDebInfo"
-- Installing: /usr/local/bin/cppblog
-- Removed runtime path from "/usr/local/bin/cppblog"
-- Installing: /usr/local/bin/cppblog_migrate
-- Installing: /usr/local/lib/cppblog/libcontendend.so
-- Removed runtime path from "/usr/local/lib/cppblog/libcontendend.so"
-- Installing: /usr/local/lib/cppblog/liborangesky.so
-- Removed runtime path from "/usr/local/lib/cppblog/liborangesky.so"
-- Installing: /usr/local/share/locale
-- Installing: /usr/local/share/locale/he
-- Installing: /usr/local/share/locale/he/LC_MESSAGES
-- Installing: /usr/local/share/locale/he/LC_MESSAGES/cppblog.mo
-- Installing: /usr/local/share/locale/zh
-- Installing: /usr/local/share/locale/zh/LC_MESSAGES
-- Installing: /usr/local/share/locale/zh/LC_MESSAGES/cppblog.mo
-- Installing: /usr/local/share/cppblog/media
-- Installing: /usr/local/share/cppblog/media/orangesky-ltr.css
-- Installing: /usr/local/share/cppblog/media/contendend-ltr.css
-- Installing: /usr/local/share/cppblog/media/adminstyle-ltr.css
-- Installing: /usr/local/share/cppblog/media/orangesky-rtl.css
-- Installing: /usr/local/share/cppblog/media/contendend-rtl.css
-- Installing: /usr/local/share/cppblog/media/adminstyle-rtl.css
-- Installing: /usr/local/share/cppblog/media/img
-- Installing: /usr/local/share/cppblog/media/img/os_entryarrow-rtl.gif
-- Installing: /usr/local/share/cppblog/media/img/os_bg.jpg
-- Installing: /usr/local/share/cppblog/media/img/os_main.png
-- Installing: /usr/local/share/cppblog/media/img/os_sidebar-rtl.jpg
-- Installing: /usr/local/share/cppblog/media/img/os_entryarrow-ltr.gif
-- Installing: /usr/local/share/cppblog/media/img/os_main.jpg
-- Installing: /usr/local/share/cppblog/media/img/os_right.png
-- Installing: /usr/local/share/cppblog/media/img/os_sidearrow-ltr.gif
-- Installing: /usr/local/share/cppblog/media/img/os_right.gif
-- Installing: /usr/local/share/cppblog/media/img/os_header.jpg
-- Installing: /usr/local/share/cppblog/media/img/os_sidebar-ltr.jpg
-- Installing: /usr/local/share/cppblog/media/img/os_sidearrow-rtl.gif
-- Installing: /usr/local/share/cppblog/media/img/os_left.gif
-- Installing: /usr/local/share/cppblog/media/adminstyle.css
-- Installing: /usr/local/share/cppblog/media/tex
-- Installing: /usr/local/share/cppblog/media/contendend.css
-- Installing: /usr/local/share/cppblog/sql/sqlite3.sql
-- Installing: /usr/local/share/cppblog/sql/mysql.sql
-- Installing: /usr/local/share/cppblog/sql/postgresql.sql
-- Installing: /usr/local/share/cppblog/sql/upgrade-1-to-2.sql
-- Installing: /usr/local/share/cppblog/sql/upgrade-2-to-3.sql
-- Installing: /usr/local/share/cppblog/sample_config.js

Процесс сборки CppBlog примерно занимает 50 секунд (если зависимости установлены, cppcms уже установлена).