1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/longzhiyan-phiwrapper

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Readme.md 4.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 20:44 40495fe

Phiwrapper

Phiwrapper — это инструмент для упаковки «толстых» двоичных файлов.

С помощью phiwrapper можно упаковать один и тот же файл, содержащий двоичные файлы для разных платформ, чтобы он мог работать на разных платформах. Например, с помощью phiwrapper можно упаковать двоичный файл PHP PE для Windows и ELF для Linux, а также код PHP. В Windows можно запустить службу, дважды щёлкнув файл file.bat, в Linux можно запустить тот же код PHP, выполнив команду sh ./file.bat.

В настоящее время phiwrapper поддерживает операционные системы Windows 7+ и x86_64 Linux и macOS.

Задачи и работа в процессе

  • zip.js — реализация zip.js ещё не выполнена, необходимо вручную упаковать код и каталог bin в zip-файл в build/build.zip.
  • [] Поддержка аргументов командной строки, полная очистка, повышение прав доступа...
  • [] Тестирование и автоматизированное тестирование.
  • [] Совместимость с системами x86 Unix-like.
  • [] Дополнительная совместимость с другими архитектурами.
  • [] Сокращение размера разархивированных файлов.

Использование для упаковки

Зависимости (Windows)

Зависимостей нет.

Зависимости (Unix-подобные системы)

Требуется nodejs.

Подготовка двоичных файлов

Подготовьте двоичные файлы phiwrapper в каталоге tools:

git clone https://github.com/longyan/phiwrapper_binaries tools

Самостоятельно подготовьте необходимые двоичные файлы и поместите их в любой подкаталог. Например, загрузите двоичный пакет PHP для Windows с сайта windows.php.net и распакуйте его в bin/win.

Выполните статическую компиляцию PHP для Linux и поместите результат в bin/linuxx64.

Подготовка кода

Поместите платформенно-независимый код в любой подкаталог (например, code/index.html, code/hello.php).

Конфигурация

Скопируйте config.js.example в config.js и создайте конфигурацию на основе содержимого файла.

Упаковка

mkwrapper.bat
./mkwrapper.sh

Ограничения

Phiwrapper просто объединяет несколько двоичных файлов в сжатый архив, но не создаёт собственный толстый двоичный файл наподобие Mach-O. Поэтому размер файла может быть большим, рекомендуется оптимизировать размер, удаляя ненужные двоичные файлы.

Лицензия с открытым исходным кодом

Phiwrapper использует Apache License 2.0 с исключениями. Это означает, что вам не нужно включать текст лицензии в двоичные файлы, созданные с использованием phiwrapper.

Copyright 2020 Longyan

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

As an exception, if, as a result of your packing your files, portions
of this Software are embedded into an partial form of such source code,
you may redistribute such embedded portions in such partial form without
complying with the conditions of Sections 4(a), 4(b) and 4(d) of the License.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/longzhiyan-phiwrapper.git
git@api.gitlife.ru:oschina-mirror/longzhiyan-phiwrapper.git
oschina-mirror
longzhiyan-phiwrapper
longzhiyan-phiwrapper
master