Jump to content

Компиляция ocaml-4.08.1 на роутере GIGAIII, ошибка No rule to make target 'none.o'


Recommended Posts

Приветствую, понадобилось собрать нативно на роутере ZKGIII  и NAS QNAP D4 ocaml-4.08.1 для дальнейшей сборки unison-2.53.2.tar так как в репозитарии unison нет.

Последовал инструкции https://github.com/Entware/Entware/wiki/Using-GCC-for-native-compilation и на QNAP всё собралось. На роутере выдаёт ошибку при 

 ./configure --prefix=/opt
make world.opt

на последнем этапе

make[3]: *** No rule to make target 'none.o', needed by 'libasmrun.a'.  Stop.:

gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o backtrace_nat_n.o backtrace_nat.c
backtrace_nat.c: In function 'caml_next_frame_descriptor':
backtrace_nat.c:51:13: warning: implicit declaration of function 'Saved_return_address' [-Wimplicit-function-declaration]
       *pc = Saved_return_address(*sp);
             ^~~~~~~~~~~~~~~~~~~~
backtrace_nat.c:59:44: warning: implicit declaration of function 'Callback_link' [-Wimplicit-function-declaration]
       struct caml_context * next_context = Callback_link(*sp);
                                            ^~~~~~~~~~~~~
backtrace_nat.c:59:44: warning: initialization of 'struct caml_context *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o backtrace_n.o backtrace.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o dynlink_nat_n.o dynlink_nat.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o debugger_n.o debugger.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o meta_n.o meta.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o dynlink_n.o dynlink.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o clambda_checks_n.o clambda_checks.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o spacetime_nat_n.o spacetime_nat.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o spacetime_snapshot_n.o spacetime_snapshot.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o afl_n.o afl.c
gcc -c -O2 -fno-strict-aliasing -fwrapv -Wall -g -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DCAML_NAME_SPACE  -DOCAML_STDLIB_DIR='"/opt/lib/ocaml"'  -DNATIVE_CODE -DTARGET_none -DMODEL_default -DSYS_unknown   -o bigarray_n.o bigarray.c
make[3]: *** No rule to make target 'none.o', needed by 'libasmrun.a'.  Stop.
make[3]: Leaving directory '/opt/home/ocaml-4.08.1/runtime'
make[2]: *** [Makefile:945: makeruntimeopt] Error 2
make[2]: Leaving directory '/opt/home/ocaml-4.08.1'
make[1]: *** [Makefile:395: opt.opt] Error 2
make[1]: Leaving directory '/opt/home/ocaml-4.08.1'
make: *** [Makefile:446: world.opt] Error 2

 

Так как я в подобных материях практически нуб, то нужна помощь старших коллег!
Если нужны логи - скажите какие и где их взять....

Edited by Ilya Solonitsyn
Link to comment
Share on other sites

Видел это, да. Как я и сказал, собираю из исходников через:

 ./configure --prefix=/opt
make world.opt
make install

На этапе make world.opt вышеуказанная ошибка и вылезает.

К сожалению навыков и знаний не хватает, что бы понять как этот рецепт на роутере реализовать.  

Link to comment
Share on other sites

43 минуты назад, Ilya Solonitsyn сказал:

Видел это, да. Как я и сказал, собираю из исходников через:

 ./configure --prefix=/opt
make world.opt
make install

На этапе make world.opt вышеуказанная ошибка и вылезает.

К сожалению навыков и знаний не хватает, что бы понять как этот рецепт на роутере реализовать.  

Ну кроме гугла более вам ничем помочь не смогу. Нужны более опытные форумчане.
P.S. Мне хватило в своё время vi и bash....

Link to comment
Share on other sites

1 час назад, krass сказал:

Здесь предлагают делать make world, что не поможет, так как нужен world.opt для дальнейшей сборки unison. И далее пишут, что:

Цитата

Concerning the missing none.o. The none.o is a placeholder module for the backend implementation, that is used if the native code generation is not supported for the target platform. Thus if you see that error, then it means, that you can't do make world.opt as there is no native code compiler for your architecture.

И вот как собрать теперь world.opt.....

Link to comment
Share on other sites

6 часов назад, Ilya Solonitsyn сказал:

И вот как собрать теперь world.opt.....

Пробовать собрать версию 3.12 или более старую.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...