KCL-Planning / DiNo

A heuristic PDDL+ planner based on the Discretise & Validate approach.
Other
14 stars 10 forks source link

Model compilation crashed #8

Open rpgoldman opened 6 years ago

rpgoldman commented 6 years ago

Tried to run the linear generator problem per instructions

UPMURPHI_HOME=../.. ../../bin/dino generator.pddl prob01.pd

after successful compilation, but got this error:

Compiling PDDL to DiNo model, please wait...

 Start DiNo translation... 

 ----- CONFIG FILE ----- 
PDDL Domain File: generator.pddl
PDDL Problem File: prob01.pddl
The output model will be written on file: generator.m
The output external function file will be written on file: generator.h
 ----- DOMAIN SETTINGS ----- 
 Time discretisation: 0.1
 Real number: (Integer): 5 digits for the integer part
 Real number: (Fractional) 2 digits for the fractional part

 ...Translation completed 

Errors: 0, warnings: 0
PDDL compilation successful, no errors
DiNo model generated in file generator.m
Compiling model...
Segmentation fault: 11

Not really sure how to diagnose this problem, since I don't see any clue about what failed. I tried running with --warnings but still no warnings between Compiling model... and the seg fault.

rpgoldman commented 6 years ago

I believe that this may be the flex issue that you refer to, but I'm not sure how to revert flex (or what will happen to my other software if I do). Is it possible to fix whatever it is that causes the problem with the new flex? Do you know what the issue is?

wmp9 commented 6 years ago

It does seem like flex is at fault. Can you tell me what system are you using?

On Ubuntu, you can downgrade flex by uninstalling it through apt-get remove, then installing an earlier version from source (you can download earlier versions of flex from sourceforge, if I'm not mistaken). I have done this myself and noticed no problems with other software. However, I cannot be certain of this for your machine and programs. I will try to investigate the issue further and I'll notify you if I manage to fix it.

On 7 March 2018 at 23:43, rpgoldman notifications@github.com wrote:

I believe that this may be the flex issue that you refer to, but I'm not sure how to revert flex (or what will happen to my other software if I do). Is it possible to fix whatever it is that causes the problem with the new flex? Do you know what the issue is?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/KCL-Planning/DiNo/issues/8#issuecomment-371325766, or mute the thread https://github.com/notifications/unsubscribe-auth/ADqlEbsff2MtPURN9MMTa_I3XXvHr76_ks5tcHCNgaJpZM4Saowr .

rpgoldman commented 6 years ago

I was trying it on a Mac, with the GNU tools all coming from MacPorts. DiNo doesn't build with Apple's g++, but it's fine with the GNU g++.

I could probably install an old version of flex somewhere from source, and just use it (through variables in Makefiles) to build DiNo.

I have an Ubuntu machine I could try this on, but it's running experiments for another project right now...

I'll report back if this works with an older version of flex.

jbx1 commented 4 years ago

I tried it with both Flex versions 2.5.39-8~ubuntu14.04.1 and 2.5.35-10.1ubuntu2 on my Ubuntu 20.04 LTS (Focal) and I get the same segmentation fault.

I don't think this is related to Flex though, because UPMurphi, on which DiNo is based works fine. Must be some other incompatibility.

H-Louadah commented 2 years ago

I have the same problem, UPMurphi is working but not DiNo even with the examples included. I think that the problem is related to java 16 link when trying to install the required dependences, I haven't yet found how to solve the problem. I have installed the required flex version and I have tested it with compiler 7, 8, and 9 but I have the same thing

DerekLong101 commented 2 years ago

I am sorry that I can't offer any direct help. Wiktor, the author of the DiNo system, is still actively working with planning and using a system that is based on this work, but I don't think he has the time to come back to this project at the moment. He works at PARC - you can find him on LinkedIn if you want to try contacting him that way.

jbx1 commented 2 years ago

@H-Louadah I don't think Java has anything to do with the problem, this project is written in C++.

H-Louadah commented 2 years ago

@H-Louadah I don't think Java has anything to do with the problem, this project is written in C++.

Yeah, maybe, this is what I am getting when installing the first required dependences even after installing manually java, it looks like a call from the installations procedures of one of the dependences


Setting up oracle-java16-installer (16.0.2-1~linuxuprising0) ... Using wget settings from /var/cache/oracle-jdk16-installer/wgetrc Downloading Oracle Java 16... --2021-10-28 18:00:43-- http://download.oracle.com/otn-pub/java/jdk/16.0.2%2B7/d4a915d82b4c4fbb9bde534da945d746/jdk-16.0.2_linux-x64_bin.tar.gz Resolving download.oracle.com (download.oracle.com)... 23.44.232.84 Connecting to download.oracle.com (download.oracle.com)|23.44.232.84|:80... connected. HTTP request sent, awaiting response... 302 Moved Temporarily Location: https://edelivery.oracle.com/otn-pub/java/jdk/16.0.2%2B7/d4a915d82b4c4fbb9bde534da945d746/jdk-16.0.2_linux-x64_bin.tar.gz [following] --2021-10-28 18:00:43-- https://edelivery.oracle.com/otn-pub/java/jdk/16.0.2%2B7/d4a915d82b4c4fbb9bde534da945d746/jdk-16.0.2_linux-x64_bin.tar.gz Resolving edelivery.oracle.com (edelivery.oracle.com)... 104.86.141.75, 2a02:26f0:5d00:48e::366, 2a02:26f0:5d00:4a5::366 Connecting to edelivery.oracle.com (edelivery.oracle.com)|104.86.141.75|:443... connected. HTTP request sent, awaiting response... 302 Moved Temporarily Location: https://download.oracle.com/otn-pub/java/jdk/16.0.2+7/d4a915d82b4c4fbb9bde534da945d746/jdk-16.0.2_linux-x64_bin.tar.gz?AuthParam=1635440563_bf0dfa3c7fc88f94f04a4ac635cd4a73 [following] --2021-10-28 18:00:43-- https://download.oracle.com/otn-pub/java/jdk/16.0.2+7/d4a915d82b4c4fbb9bde534da945d746/jdk-16.0.2_linux-x64_bin.tar.gz?AuthParam=1635440563_bf0dfa3c7fc88f94f04a4ac635cd4a73 Connecting to download.oracle.com (download.oracle.com)|23.44.232.84|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2021-10-28 18:00:44 ERROR 404: Not Found.

download failed Oracle JDK 16 is NOT installed. dpkg: error processing package oracle-java16-installer (--configure): installed oracle-java16-installer package post-installation script subprocess returned error exit status 1 Errors were encountered while processing: oracle-java16-installer E: Sub-process /usr/bin/dpkg returned an error code (1)

H-Louadah commented 2 years ago

er a

Thanks

jbx1 commented 2 years ago

@H-Louadah not sure why you are installing Java, the dependencies you need to install according to the Readme are: sudo apt-get install build-essential flex bison libc6-dev-i386 gcc-multilib g++-multilib byacc

None of these needs Java.

Anyway, if you need Java for some reason you should probably go for the latest LTS version, which is 17. Java 16 is not LTS and Oracle stop supporting those versions after 6 months of release, which expired in September. For licensing reasons you probably want to go for OpenJDK.

H-Louadah commented 2 years ago

@jbx1 I am not installing java, when I run this command sudo apt-get install build-essential flex bison libc6-dev-i386 gcc-multilib g++-multilib byacc I am getting the error I don't need java at all for now, however, this is what I am getting

galk-research commented 8 months ago

I recently cloned DiNo in an effort to make it work on modern ubuntu (https://github.com/galk-research/DiNo/). The "work-in-64" branch is the active development branch.

This is still not working right, but the flex problem is (I think) easily solved by installed "flex-old" instead of "flex". Also, there are lots of warnings about deprecated auto_ptr and such: Adding "-ansi" to the flags gets rid of these.

Work in progress, but there's real progress.

Gal Kaminka