Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

most of the example failed #1

Closed
WeiLiPenguin opened this issue Apr 15, 2016 · 9 comments
Closed

most of the example failed #1

WeiLiPenguin opened this issue Apr 15, 2016 · 9 comments

Comments

@WeiLiPenguin
Copy link

Hi,
I try to run the examples with the script, but:

terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_S_construct null not valid

Please help me,
what kind of information do you need?

Best Regards!
Thanks for the tool.

@orex
Copy link
Owner

orex commented Apr 15, 2016

Hi, Wei Li.

This error looks like system related stuff. Please, provide me an information about

  1. Your system.
  2. Please, recompile the program with cmake -DCMAKE_BUILD_TYPE=Debug ../ . It will produce more verbose output.
  3. Please also run command
    supercell -d -i Ca2Al2SiO7.cif and print all output you have.

Best,
Kirill.

@WeiLiPenguin
Copy link
Author

WeiLiPenguin commented Apr 16, 2016

Hi, Kirill
OS: ubuntu 14.04 64
g++ (Ubuntu 4.8.4-2ubuntu1~14.04.1) 4.8.4

ldd supercell

        linux-vdso.so.1 =>  (0x00007ffd6d35c000)
        libopenbabel.so.4 => /usr/local/lib/libopenbabel.so.4 (0x00007fbf28896000)
        libboost_regex.so.1.54.0 => /usr/lib/x86_64-linux-gnu/libboost_regex.so.1.54.0 (0x00007fbf2857a000)
        libboost_program_options.so.1.54.0 => /usr/lib/x86_64-linux-gnu/libboost_program_options.so.1.54.0 (0x00007fbf2830b000)
        libboost_system.so.1.54.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.54.0 (0x00007fbf28107000)
        libarchive.so.13 => /usr/lib/x86_64-linux-gnu/libarchive.so.13 (0x00007fbf27e66000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fbf27b61000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fbf2785b000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fbf27645000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fbf2727f000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fbf2707b000)
        libicuuc.so.52 => /usr/lib/x86_64-linux-gnu/libicuuc.so.52 (0x00007fbf26d02000)
        libicui18n.so.52 => /usr/lib/x86_64-linux-gnu/libicui18n.so.52 (0x00007fbf268fa000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fbf266dc000)
        libnettle.so.4 => /usr/lib/x86_64-linux-gnu/libnettle.so.4 (0x00007fbf264ad000)
        libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007fbf262a7000)
        liblzo2.so.2 => /lib/x86_64-linux-gnu/liblzo2.so.2 (0x00007fbf26086000)
        liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007fbf25e64000)
        libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007fbf25c53000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fbf25a3a000)
        libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007fbf256d3000)
        /lib64/ld-linux-x86-64.so.2 (0x0000556eb93c9000)
        libicudata.so.52 => /usr/lib/x86_64-linux-gnu/libicudata.so.52 (0x00007fbf23e65000)

the output is the same like before,

debug compiler flags seems still have -O3

I will try -O0 and with gdb to find where cause the error.

could you please add a test in the .travis.yaml to see if have the same error?

I find code crash at around d2o_main_class.cpp:1632, is that could be related to the openbabel read cif file ?

Best Regards!

@orex
Copy link
Owner

orex commented Apr 16, 2016

Hi, Wei Li.

I can confirm, that openbabel is a weak place of my program. I will add the test shortly, but what version of openbabel you are using?

-O0 will not help you. You should use -g.

For me it is very strange, that you don't have anything else in the output. You should have at least header of my program run.

Kirill.

@WeiLiPenguin
Copy link
Author

Yes, Kinrill
It has only your header and that error.
I mean your cmake hardcoded with the Debug flag with -g -O3, I try to change to -g -O0.
I install openbabel like your .travis.yaml file, so clone from its repo, should be newest one? but it also have apt-get install openbabel. I am confused now.

Wei

@orex
Copy link
Owner

orex commented Apr 16, 2016

You should remove openbabel from ubuntu repository. Most probably they cannot live together. Just before remove openbabel from repository, can you run openbabel itself? From both /usr/bin and /usr/local/bin folder. Most probaly the problem here.

I've add the test. It is failed, but with another error. I'm going to research the problem.

@orex
Copy link
Owner

orex commented Apr 16, 2016

I've just add the test. The funny thing, that it has passed with clang, but failed with gcc. I'm very surprised. Your help in solving of the issue is crucial.

@orex
Copy link
Owner

orex commented Apr 16, 2016

It looks like this is even GCC compiler bug. The workaround is not to use "-O0" option in OpenBabel compiling. Use default cmake options for openbabel (cmake ../ -DCMAKE_BUILD_TYPE=Release) to make the supercell program working.

@orex orex closed this as completed Apr 16, 2016
@WeiLiPenguin
Copy link
Author

Great! It works!
BTW:
is that possible run in parallel?

@orex
Copy link
Owner

orex commented Apr 16, 2016

You can run my program in parallel only for some cases, now. Although, the enumerating algorithm can be parallelized very efficiently I don't see now any strong reason to implement this. If it is not a secret, can you briefly describe your project. We can discuss and I can implement this. You can do this public (creating a new issue) or privately (my e-mail in git log).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants