Code Monkey home page Code Monkey logo

Comments (10)

jalevine avatar jalevine commented on May 21, 2024 1

Looking closely at compile_commands.json, it does seem like there's an inconsistency.

When you're building core/base/dimensionReduciton you find python3.7 and use that. This is the only object that gets built with python3.7 (see lines 78, 79)

All other objects, in particular ttkDimensionReduction appear to be including and/or linking against python2.7 (see, for example, lines 368, 369).

It appears you have both pythons installed with homebrew. On my environment, I explicitly removed python@2 from homebrew (which is kind of recommended these days).

My guess is that either on the ParaView cmake or the TTK cmake commands, it found half of one python and half of the other. You may have to run ccmake instead and manually set up python to work correctly, my guess would be for the ParaView compilation. Can you confirm which version of python ParaView was compiled against?

It may also be related to if your installation of vtk was brewed with the "--without-python@2" formula. I found this is a bit tricky with the current version of homebrew in vtk, as some of the dependencies needed to installed in sequence with that flag (see step 2 of https://topology-tool-kit.github.io/installation-osx.html)

from ttk.

julien-tierny avatar julien-tierny commented on May 21, 2024

from ttk.

kamakshidasan avatar kamakshidasan commented on May 21, 2024

from ttk.

jalevine avatar jalevine commented on May 21, 2024

This sounds a lot like the DimensionReduction module cannot find python's libraries when compiling / linking.

What versions of python are you building against and how did you install it?

If you're using homebrew python, and want to recreate my setup, you may also have to add (as suggested by homebrew):

export PATH="/usr/local/opt/python/libexec/bin/:$PATH"

To your .bashrc (or similar shell startup script). This ensures that when you build ParaView with PARAVIEW_ENABLE_PYTHON=ON it selects the right one. TTK in turn takes the ParaView python information when running its cmake.

Are you explicitly trying to use this feature of TTK? If not, we might be able to do a workaround where you do not compile it. We're still debugging some of the DimensionReduction features on OSX.

from ttk.

kamakshidasan avatar kamakshidasan commented on May 21, 2024

from ttk.

kamakshidasan avatar kamakshidasan commented on May 21, 2024

compile_commands.json.zip

from ttk.

julien-tierny avatar julien-tierny commented on May 21, 2024

from ttk.

kamakshidasan avatar kamakshidasan commented on May 21, 2024

Thanks @julien-tierny, it worked :)

from ttk.

kamakshidasan avatar kamakshidasan commented on May 21, 2024

My guess is that either on the ParaView cmake or the TTK cmake commands, it found half of one python and half of the other.

You're guess might be right. Paraview is against Python 2.7. I don't think I have updated it after TTK 0.9.1. I think VTK works fine, though.

I think I might have to install Paraview again with a newer version --- but this means I might have to migrate all my earlier TTK scripts :(

from ttk.

julien-tierny avatar julien-tierny commented on May 21, 2024

from ttk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.