Из ваших других вопросов кажется, что у вас есть несколько строк для компиляции, и вы просто ходите вслепую, хотя и не разбираетесь в опциях компиляции.
1) В строке компиляции есть опция -c
. Эта опция не связывает, поэтому она позволяет кому-то скомпилировать отдельный модуль и связать его позже. Это полезно для того, чтобы проект был собран по частям и обновлен по частям для более быстрой окончательной компиляции. Таким образом, опция -c
, переданная ocamlc , создает ваш cmi
и cmo
модуль, соответствующий байт-коду.
2) Здесь вы что-то упустили в своей строке примера компиляции - ничего не сказано о создании дополнительного файла. Я предполагаю, что вы также используете опцию -c
. Это связано с тем, что .cmx
также является скомпилированным модулем, но изначально скомпилирован с помощью ocamlopt .
3) Это должно быть довольно очевидной ошибкой компиляции для исправления. Где в ваших включенных каталогах находится bigarry.cmxa
? Никто из них. Вы сами сказали, что он находится в /usr/lib/ocaml/
, каталоге, который вы не включили! Каталоги не выполняют рекурсивный поиск, и вы уже сталкивались с этим в других вопросах.
Я настоятельно рекомендую вам прочитать руководство по компиляции. Эта документация, которую вы изучаете, верна в том, как компилировать, но вы настроили свою среду по-другому, и различие будет разочаровывать, пока вы не поймете, что на самом деле делают эти команды.