Самые простые шаги к преобразованию TCL TK к автономному приложению

Да, найдите другое зеркало в своей собственной стране, если Вы не находитесь в Америке.

Выбор зеркало здесь

22
задан icebat 17 April 2015 в 13:40
поделиться

2 ответа

Для сборки старпака вам потребуется а) среда выполнения tclkit , б) sdx.kit . Вам также понадобится «basekit», исполняемый файл, в который будет заключен ваш tcl-код. В этом примере я предполагаю, что вы создаете приложение для той же платформы, на которой работаете. Вы можете создать базовый набор, просто скопировав tclkit (или tclkit.exe в Windows) с другим именем, например «basekit»

% ls
sdx.kit tclkit
% cp tclkit basekit
% ls
basekit sdx.kit tclkit

. Теперь создайте код, который вы хотите заключить в исполняемый файл. По соглашению создается каталог с именем вашего приложения и суффиксом «.vfs» (для «виртуальной файловой системы»), а затем создается файл с именем «main.tcl». в этом каталоге:

% mkdir myapp.vfs
% cat > myapp.vfs/main.tcl
package require Tk
label .l -text "Hello, world"
pack .l
^D
% ls myapp.vfs
main.tcl

Теперь обернем: для этого вам понадобится файл sdx.kit. Предполагая, что он и tclkit (или tclkit.exe) находятся в вашем текущем рабочем каталоге, вы обертываете свое приложение следующим образом:

% ./tclkit sdx.kit wrap myapp -runtime basekit
1 updates applied
% ls 
basekit myapp myapp.vfs sdx.kit tclkit

Команда wrap знает, когда вы даете ей аргумент «myapp», что она должна обернуть содержимое myapp.vfs , и что он должен искать в этом каталоге файл с именем main.tcl как точку входа в программу. Вы можете поместить в этот каталог любые другие файлы, которые хотите, и все они будут упакованы, включая двоичные файлы для конкретной платформы, файлы изображений и все остальное, что вы хотите объединить.

Теперь у вас есть исполняемый файл myapp, который это приложение в оболочке.

Если у вас есть tclkits для разных архитектур, вы можете их использовать (заменив 'basekit' в командной строке с набором для целевой архитектуры) для кросс-компиляции для других платформ.

Для получения дополнительной информации см. Как создать свой первый Starpack на Tcl'ers Wiki

]
24
ответ дан 29 November 2019 в 05:29
поделиться

система сборки kitgen также может помочь вам в начале.

2
ответ дан 29 November 2019 в 05:29
поделиться