Менеджер пакетов для языка программирования C.
Ожидает, что libcurl будет установлен и доступен для компоновки.
С домашним пивом:
$ brew install clib
Или МакПорты:
$ sudo port selfupdate
$ sudo port install clib
С помощью git:
$ git clone https://github.com/clibs/clib.git /tmp/clib
$ cd /tmp/clib
$ make install
Убунту:
# install libcurl
$ sudo apt-get install libcurl4-gnutls-dev -qq
# clone
$ git clone https://github.com/clibs/clib.git /tmp/clib && cd /tmp/clib
# build
$ make
# put on path
$ sudo make install
Федора:
# install libcurl
$ sudo dnf install libcurl-devel
# clone
$ git clone https://github.com/clibs/clib.git /tmp/clib && cd /tmp/clib
# build
$ make
# put on path
$ sudo make install
По сути, копирование/вставка для ленивых, продвигающая небольшие утилиты C, а также хороший способ открыть для себя такого рода библиотеки. По моему опыту, библиотеки C разбросаны по всей сети, и их доступность относительно невелика. Зона действия этих библиотек обычно довольно велика и нецеленаправленна. Цель clibs
— предоставить разработчикам автономные «микро» библиотеки C для быстрой установки без привязки к большим платформам.
Вам следует использовать clib(1)
чтобы получить эти файлы и вернуть их в свой репозиторий, конечный пользователь и участники не должны требовать установки clib(1)
. Это позволяет clib(1)
без проблем вписаться в любой новый или существующий рабочий процесс C.
Вики-листинг пакетов действует как «реестр» и заполняет результаты clib-search(1)
.
clib [options]
Options:
-h, --help Output this message
-V, --version Output version information
Commands:
init Start a new project
i, install [name...] Install one or more packages
up, update [name...] Update one or more packages
upgrade [version] Upgrade clib to a specified or latest version
configure [name...] Configure one or more packages
build [name...] Build one or more packages
search [query] Search for packages
help Display help for cmd
Подробнее об интерфейсе командной строки здесь.
Больше примеров и лучших практик на BEST_PRACTICE.md.
Установите несколько зависимостей в ./deps
:
$ clib install clibs/ms clibs/commander
Вместо этого установите их в ./src
:
$ clib install clibs/ms clibs/commander -o src
При установке библиотек из организации clibs
вы можете опустить имя:
$ clib install ms file hash
Установите несколько исполняемых файлов:
$ clib install visionmedia/mon visionmedia/every visionmedia/watch
Пример файла clib.json с явным указанием источника:
{
"name" : " term " ,
"version" : " 0.0.1 " ,
"repo" : " clibs/term " ,
"description" : " Terminal ansi escape goodies " ,
"keywords" : [ " terminal " , " term " , " tty " , " ansi " , " escape " , " colors " , " console " ],
"license" : " MIT " ,
"src" : [ " src/term.c " , " src/term.h " ]
}
Пример clib.json для исполняемого файла:
{
"name" : " mon " ,
"version" : " 1.1.1 " ,
"repo" : " visionmedia/mon " ,
"description" : " Simple process monitoring " ,
"keywords" : [ " process " , " monitoring " , " monitor " , " availability " ],
"license" : " MIT " ,
"install" : " make install "
}
Более подробную информацию см. в объяснении clib.json.
Если вы заинтересованы в участии в этой инициативе, дайте мне знать, и я добавлю вас в организацию clibs
, чтобы вы могли создавать здесь репозитории и вносить свой вклад в существующие.
Если у вас есть какие-либо проблемы, вопросы или предложения, пожалуйста, откройте проблему здесь.
Вы также можете найти нас на Gitter: https://gitter.im/clibs/clib
Также не стесняйтесь открыть обсуждение GitHub здесь.
Перед фиксацией в репозитории запустите make commit-hook
. При этом устанавливается перехватчик фиксации, который форматирует файлы .c
и .h
.