refal-5-lambda
refal-5-lambda copied to clipboard
Nix Flakes
Для того, чтобы проверить, нужно установить Nix (если его нет), и запустить следующую команду:
nix-shell -p nixFlakes --command 'nix --experimental-features "nix-command flakes" build git+ssh://github.com/cab404/refal-5-lambda'
Это скачает и установит все зависимости и соберёт refal.
- [ ] Проверить на убунте
- [ ] Попробовать добавить сборки под windows через Wine
@potan my work here is (almost) done :D
Спасибо, добавлю!
On October 17, 2021 1:48:43 PM GMT+03:00, Alexander Konovalov @.> wrote: @. commented on this pull request.
src = ./.;
patchPhase = ''
runHook prePatchPhase
find -type f -exec sed -i '1,1s\#!/bin/bash\#!${pkgs.bash}/bin/bash\' '{}' ';'
runHook postPatchPhase
'';
buildPhase = ''
runHook preBuildPhase
./bootstrap.sh
runHook postBuildPhase
'';
installPhase = ''
runHook preInstallPhase
mkdir -p $out
mv bin $out
Если я правильно понял этот сценарий, при установке Вы копируете только папку
bin
. Помимоbin
нужно копировать папкуlib
и файлc-plus-plus.conf.sh
. Скрипты изbin
инклюдятc-plus-plus.conf.sh
, который лежит в папке выше и предполагают наличиеlib
со всем её содержимым рядом сbin
.-- You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub: https://github.com/bmstu-iu9/refal-5-lambda/pull/363#pullrequestreview-781434572
@Mazdaywik Что бы могло значить "INTERNAL ERROR: can't find signature in executable"?
А как вам удалось эту ошибку получить?
Исполнимый файл, построенный компилятором, состоит из префикса-интерпретатора и интерпретируемого кода. Префикс-интерпретатор открывает argv[0]
, ищет в нём сигнатуру, с которой начинается интерпретируемый код, его парсит и выполняет.
Сигнатура должна располагаться по смещению, кратному 4096.
Вы каким-то образом получили один только префикс-интерпретатор без интерпретируемого хвоста, либо поехало смещение. Вы strip
для exe’шника не делали?
Вообще я делал стрип. Он роняет тут экзешники, получается?
Получается, что да.
@cab404, @potan, создал багу на несовместимость со strip
: #364. Решение мне пока не очевидно.