Skip to content
/ ncpp Public

Минималистичная системная библиотека / Minimalistic system library

Notifications You must be signed in to change notification settings

vlad441/ncpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

version C++ C++ en ru Github link License coverage

ncpp (Node C++) — минималистичная системная библиотека, которая стремится предоставить простой и эффективный кроссплатформенный инструментарий, вдохновленный документацией и асинхронностью Node.js.

ncpp предлагает реализации из различных областей для стандартов C++98 и выше, такие как обработка буферов, файлов, сети, шифрования и многое другое, минимизируя внешние зависимости и сохраняя минимальный размер.

Сборка

Использование

Более подробно ознакомиться с документацией вы можете здесь.

Сборка

Требования:

  • Поддержка компиляторов: gcc >= 3.4.2 (рекомм. >= 4.9.2); clang >= 3.5.2;
  • Поддержка стандарта: C++98, C++11 и выше;
  • Поддержка ОС: Linux >= 2.6.18 (рекомм. >= 3.10.0); Windows XP+;

Прямое включение исходного кода (header-only style)

Это самый простой способ, особенно если вы хотите самостоятельно выбрать уровень оптимизации при компиляции каждого вашего проекта под конкретную платформу. Однако это может увеличить время компиляции.

Вы можете использовать скрипт gcc_make.sh/gcc_make.bat в scripts для этих целей.

Также, можете просто подключить #include "src/ncpp.cpp" в ваш код. Это подключит в ваш файл полную реализацию библиотеки. (Однако, в этом случае может понадобиться вручную выставлять флаги компилятора и линковать системные библиотеки).

Сборка библиотеки из исходников

На данный момент сборка .a и .so (Linux), а также .lib и .dll (Windows) не поддерживается, заголовочные файлы .h пока не предоставляются. Вы можете их собрать через скрипт gcc_build.sh/gcc_build.bat в scripts, однако статические библиотеки не будут оптимизироваными. Собраные библиотеки будут в директории lib.

Использование

Линковка бинарной библиотеки

Сами библиотеки скомпилированы с использованием стандарта C++11, что должно обеспечить лучшую производительность по сравнению с C++98, однако в окружениях где использование этих сборок библиотек невозможно, вы можете использовать Прямое включение исходного кода или Сборка библиотеки из исходников.

Пакетные менеджеры

Для Linux систем вы можете подключить репозитории для пакетных менеджеров чтобы установить библиотеку в вашу систему.

Установка пакета через apt

На данный момент .deb пакеты не предоставляются.