Ultimaker / libArcus

Communication library between internal components for Ultimaker software
GNU Lesser General Public License v3.0
75 stars 81 forks source link

Could not find SIP #59

Closed nickthetait closed 6 years ago

nickthetait commented 7 years ago

Platform: Ubuntu 17.04 libtool: (GNU libtool) 2.4.6 SIP: 4.19.3

Steps to Reproduce: Follow CuraEngine installation instructions from https://github.com/Ultimaker/CuraEngine Get down to the install libArcus step When executing cmake .. I get the following error: -- Found Protobuf: /usr/local/lib/libprotobuf.so;-lpthread (found suitable version "3.3.2", minimum required is "3.0.0") -- Found PythonInterp: /usr/local/bin/python3.4 (found suitable version "3.4.6", minimum required is "3.4.0") -- Found PythonLibs: /usr/local/lib/libpython3.4m.a (found suitable version "3.4.6", minimum required is "3.4.0") CMake Error at cmake/FindSIP.cmake:64 (MESSAGE): Could not find SIP Yet I do have SIP installed. Any hints on what I should do?

More details in CMakeError.log: https://gist.github.com/nickthetait/8a461c57465be29fbc22a1f430568ecc

edit: use a gist instead of pasting file output

nallath commented 7 years ago

Did you install the dev sip package? It could be that the findsip isn't looking in the right place for the sip that you have.

awhiemstra commented 7 years ago

Can you try the findsip_cleanup branch? I made some changes there into how we find sip that should be better compatible with recent versions of sip.

nickthetait commented 7 years ago

I installed dev-sip for a little while. It is not currently on this system nor at the time the first error happened.

Using the findsip_cleanup branch I get different results but no luck yet. https://gist.github.com/nickthetait/216bb11a41a841cf72f66cab59db85e7 https://gist.github.com/nickthetait/a2a2152184251f8a8af868acaf32a7d5

Ghostkeeper commented 7 years ago

/usr/bin/ld: cannot find -lpthreads

Hold up, shouldn't that be -lpthread?

Ghostkeeper commented 7 years ago

On the first gist, perhaps you have SIP installed but not in Python, as it seems to be failing on Python's ImportError when calling import sip.

nickthetait commented 7 years ago

Seems as though I am able to get access to SIP through Python, but not Python3. I did this manually: https://gist.github.com/nickthetait/af4ed68373d3370f4c2e8c02bf5bc419

Edit: correction and use gist

awhiemstra commented 7 years ago

-- Could NOT find Sip (missing: SIP_INCLUDE_DIR)

This seems to suggest your sip development headers are missing or located in an unexpected location. For the findsip_cleanup branch you can set them manually through CMake if they are in an unexpected location.

nickthetait commented 7 years ago

How can I manually find where they are located? What should I be looking for?

nickthetait commented 7 years ago

Is the standard way to install SIP with pip3 install SIP?

MrSynAckSter-zz commented 7 years ago

I'm getting this error and I don't even need sip. I want to use CuraEngine command line for another project. Is there an easy way to disable the need for SIP here? On OSX, and SIP has nothing to do with my needs for libArcus. The readme doesn't even say it's a full on requirement!

awhiemstra commented 7 years ago

@nickthetait It depends a bit on your platform. I personally run ArchLinux so just use the Arch package, but other distributions may have different results. Do note however that the PyPI sip package only includes the Python module, so not the development headers or the code generation tool. If you cannot use your distribution's package, you will need to download the Sip source and build that.

@baordog If you do not need Arcus, you can compile CuraEngine without Arcus support. On the other hand, if you do want to use Arcus but do not need the Python bindings, you can disable building the Python bindings for Arcus.

scottdky commented 7 years ago

I tried compiling CuraEngine without having Arcus and it failed. SIP for 32-bit Linux is not available, but it can be built from source. Here's how:

    #build sip for 32-bit linux
    wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.3/sip-4.19.3.tar.gz 
    tar -xvf sip-4.19.3.tar.gz; rm sip-4.19.3.tar.gz
    cd sip-4.19.3
    python3 configure.py 
    make
    sudo make install
meji92 commented 7 years ago

In ubuntu works with python3-sip-dev package

arsalanj commented 6 years ago

@nickthetait were you able to solve this?

arsalanj commented 6 years ago

I downloaded sip-4.19.5.tar.gz then extract cd sip-4.19.5 python3 configure.py make sudo make install

cmake.. running successfully

electrocoder commented 5 years ago

Unknown CMake command "add_sip_python_module"