Я довольно новичок в Linux и собираю программное обеспечение из исходников. Я не уверен, что говорит мне результат и где искать решение моей проблемы.

Я пытаюсь установить Moscow ML: http://www.itu.dk/~sestoft/mosml.html

Как указано в документации, я перехожу в каталог, где я его распаковал, и набираю

make world

Полный вывод здесь: http://pastebin.com/UqNfsCnf

Последняя часть вывода:

gcc -O -DNDEBUG -o mosmlyac closure.o error.o lalr.o lr0.o main.o mkpar.o output.o reader.o skeleton.o symtab.o verbose.o warshall.o
strip mosmlyac
make[1]: Leaving directory `/home/user/Downloads/ml/mosml/src/mosmlyac'
cd mosmllib; make all
make[1]: Entering directory `/home/user/Downloads/ml/mosml/src/mosmllib'
/lib/cpp -P -traditional -Dunix -Umsdos Array.mlp > Array.sml
../camlrunm ../mosmlcmp -stdlib ../mosmllib -P none -imptypes Vector.sig
../camlrunm ../mosmlcmp -stdlib ../mosmllib -P none -imptypes Array.sig
../camlrunm ../mosmlcmp -stdlib ../mosmllib -P none -imptypes List.sig
../camlrunm ../mosmlcmp -stdlib ../mosmllib -P none -imptypes Array.sml
*** glibc detected *** ../camlrunm: free(): invalid pointer: 0x00000000012e6000 ***
======= Backtrace: =========
/lib64/libc.so.6[0x33af07da76]
../camlrunm(alloc_shr+0x3d6)[0x40a336]
../camlrunm[0x409b3c]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409bb5]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm[0x409b8f]
../camlrunm(minor_collection+0x80)[0x409cc0]
../camlrunm(interprete+0x21bd)[0x407d7d]
../camlrunm(main+0x2eb)[0x40599b]
/lib64/libc.so.6(__libc_start_main+0xed)[0x33af02169d]
../camlrunm[0x405b01]

затем карта памяти и

make[1]: *** [Array.uo] Aborted (core dumped)
make[1]: Leaving directory `/home/matthew/Downloads/ml/mosml/src/mosmllib'
make: *** [world] Error 2

Любые идеи о том, что я могу сделать, чтобы сделать эту работу? Спасибо!

1 ответ1

0

Я просто столкнулся с этой же проблемой. В каталоге gc_ctrl.c.1 находится файл с именем runtime . Сделайте резервную копию существующего файла gc_ctrl.c в этом каталоге, а затем скопируйте его поверх него. После этого моя сборка сработала. На сайте MosML есть примечание, но они ссылаются на неправильный файл замены.

# From src/ directory

# Make backup and move new file into place
cp runtime/gc_ctrl.c runtime/gc_ctrl.c.bak
cp runtime/gc_ctrl.c.1 runtime/gc_ctrl.c

# Cleanup previous compiled files and rebuild.
make clean 
make world

# If previous was successful and you want to install it
sudo make install 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .