обязательный:
необязательный:
Этот пример предполагает, что вы установили Python 3 и недавнюю версию Scons. Также возможно построить нашу библиотеку без школьников, используя Makefile. Поскольку Scons является нашим основным инструментом сборки, мы опишем подход Scons здесь.
Клонировать репозиторий от https://gitlab.com/pi-lar/neuropil (версия разработки) или https://github.com/pi-lar/neuropil (зеркало) с git.
CD в папку и создайте код с помощью Scons.
Сначала дать команду
git submodule init
С последующим
git submodule update
Создайте либо в режиме отладки с:
scons -C build -f ../SConstruct --DEBUG
или в режиме выпуска с:
scons -C build -f ../SConstruct --RELEASE
Создайте документацию (требуется установка Sphinx):
scons -C build -f ../SConstruct doc=1
Создайте тесты (требуется критерия установка):
scons -C build -f ../SConstruct tests
Очистить/удалить проект:
scons -C build -f ../SConstruct -c
Существует также доступный файл Make -файл, но некоторые PATH Infos жестко закодированы и должны быть адаптированы к вашей среде. Makefile в основном используется для запуска инструмента Scan-Build для сканирования LLVM для анализа статического кода и для размывания библиотеки.
Файлы Cmake являются первым первоначальным черновиком и способны создавать библиотеку, но не примеры программ.
До сих пор не доступно AutoConf.
Neuropil доступен для экосистемы NIX, которая обеспечивает воспроизводимые сборки библиотеки и чистой среды развития.
Этот проект поставляется как Nix Flake, но поставляется с обертками для Nix < 3.x .
Он предоставляет следующие пакеты:
Хотя это, вероятно, не то, что вы хотите сделать (см. Следующий раздел), создание отдельных пакетов работает следующим образом:
| Командование | Описание |
|---|---|
nix build ./ | Создание библиотеки и файлов заголовков |
nix build ./#packages.x86_64-{darwin,linux}.neuropil_{python,luajit} | Создает модуль Python или модуль LUA соответственно |
nix develop или nix-shell -A devShell.x86_64-{darwin,linux} | Открывает раковину с ливерропилом на LDPATH и LUA/Python. Используйте это для создания источников C вручную (например $CC examples/neuropil_sender.c -lneuropil ) |
nix shell ./#packages.x86_64-{darwin,linux}.libneuropil | Открывает оболочку с доступными зависимостями нейропила, позволяет обычным рабочим процессам, используя scons --DEBUG и scons --RELEASE . |
git+<url to repo> открыть оболочку/построить библиотеку gitlab:pi-lar/neuropil клонирования репозитория, используя хлопья Nix ./
В большинстве случаев вы захотите интегрировать neuropil в свой проект с помощью NIX. Чтобы сделать нейропил частью вашего приложения, вы можете просто импортировать хлопья и добавить его наложение в свой набор пакетов, например:
{ nixpkgs } :
let
// add rev = . . . to point to a specific version
neuropil = import ( fetchGit { url = "https://gitlab.com/pi-lar/neuropil.git" ; } ) ;
pkgs = import nixpkgs { overlays = [ neuropil . overlay ] } ;
python = pkgs . python3 . withPackages ( ps : with ps ; [ neuropil_python < other python > ] )
in with pkgs ; mkDerivarion {
...
buildInputs = [ libneuropil neuropil_luajit python < other deps > ]
...
}Если ваш проект основан на Flake, просто добавьте это репо в качестве ввода и импортируйте наложение.
В настоящее время библиотека cffi на Python 3.8 не может анализировать критический файл заголовка в STDDEF. Поэтому мы предоставляем библиотеку для Python3.7 только до тех пор, пока это не будет решено.
Входные каталоги:
Выходные каталоги:
Вы можете запустить исполняемые файлы так же, как и любой исполняемый файл, пожалуйста, посмотрите на параметры каждой программы:
Пример 1: Запустите контроллер на порту 1111
LD_LIBRARY_PATH=./build/neuropil/lib ./build/neuropil/bin/neuropil_controller -b 1111
Пример 2: Запустите узел на порту 2222 и отправьте сообщение об соединении в другой узел:
./build/neuropil/bin/neuropil_node -b 2222 -j b3b680a867849efe5886a5db751392e9d3079779e3f3c240ed849c11f4ba7d4a:udp6:test.local:3141
Пример 3: Запустите узел на порту 2222 и отправьте сообщение соединения подстановочного знака в другой узел:
./build/neuropil/bin/neuropil_node -b 2222 -j *:udp6:test.local:3141
Чтобы запустить тестовые комплексы, пожалуйста, пожалуйста, параметр «-J1», чтобы ограничить параллельное выполнение. Обычно мы используем следующую команду:
./build/neuropil/bin/neuropil_test_suite --tap -j1
Этот проект доступен в качестве открытого исходного кода в соответствии с условиями лицензии Open Software версии 3.0. Тем не менее, некоторые файлы в EG ext_Tools лицензированы в рамках BSD2 или GPL-2.0-Orlater и X11, поэтому, пожалуйста, для точной информации проверьте отдельные файлы.