When I attempt to import python-pcl (pcl) in the python console I get the following error:
>>> import pcl Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/qurrent/.local/lib/python2.7/site-packages/pcl/__init__.py", line 2, in <module> from ._pcl import * ImportError: libpcl_keypoints.so.1.7: cannot open shared object file: No such file or directory
It appears that python-pcl depends on an obsolete version of the pcl library. When I list the available versions of this library I get the following:
apt-cache madison libpcl-dev libpcl-dev | 1.8.1+dfsg1-2ubuntu2.18.04.1 | http://us.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages libpcl-dev | 1.8.1+dfsg1-2ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
Your Environment
Operating System and version: Ubuntu 18.04 and Ubuntu 16.04 (tested with both) also tested with a Jetson tx2. ALL systems show the same behavior.
Compiler: Python
PCL Version: 1.8.1
Cython Version: 0.29.16
Context
I am trying to use the python-pcl library to process point cloud data from a Livox 100 lidar.
Expected Behavior
I expect to be able to import pcl with no errors in a python environment
Current Behavior
See above
Code to Reproduce
No code
I have attempted the following to try to resolve this issue
Uninstalled existing pcl libraries
Attempted to install pcl 1.7 but there is no 1.7 apt package
Attempted to build pcl 1.7.2 from source however I ran into a compiler error:
correspondence_estimation_normal_shooting.h:184:41: error: return-statement with a value, in function returning 'void' [-fpermissive] getKSearch () const { return (k_); }
Attempted to build pcl 1.70 from source however I ran into a complete compile failure with the following errors:
>}’ to ‘const Eigen::Map<const Eigen::Matrix<float, 4, 1>, 16>’ PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4]) ^
Attempted to follow the correction steps on https://github.com/strawlab/python-pcl/issues/317. However these steps failed. I do not show 1.7 in my apt list.
I attempted to install the following and go this result
sudo apt-get install libpcl-dev=1.7.2-14build1 Reading package lists... Done Building dependency tree Reading state information... Done E: Version '1.7.2-14build1' for 'libpcl-dev' was not found
Did a sudo apt update probably 25-50 times during this entire process.
Re-ran pip install python-pcl But I got the same error in the python console.
Ran a python script that contained the following
import numpy import pcl
Got the following error
Traceback (most recent call last): File "test.py", line 2, in <module> import pcl File "/home/qurrent/.local/lib/python2.7/site-packages/pcl/__init__.py", line 2, in <module> from ._pcl import * ImportError: libpcl_keypoints.so.1.7: cannot open shared object file: No such file or directory qurrent@qurrent-
Attempted to download the .tar.gz and install it according to these instructions:
tar zxf python-pcl-0.3.0rc1.tar.gz cd python-pcl-0.3.0rc1 python setup.py install
Found on issue 317
Got the following error(s):
`# pcl_base.h
template
class PCLBase
cdef extern from "pcl/pcl_base.h" namespace "pcl":
cdef cppclass PCLBase[PointT]:
PCLBase ()
cython compilation errors /_pcl_180.cpp -o build/temp.linux-x86_64-2.7/pcl/_pcl_180.o
pcl/_pcl_180.cpp:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
error Do not use this file, it is the result of a failed Cython compilation.
^~~~~
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1`
Other Questions
What would it take to update python-pcl to work with modern versions of the PCL library and modern versions of Ubuntu, namely 18.04?
Any help on this would be great. I don't see any other leafs I can turn over to get this working. Is it still supported? Is it supposed to work on Ubuntu?
When I attempt to import python-pcl (pcl) in the python console I get the following error:
>>> import pcl Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/qurrent/.local/lib/python2.7/site-packages/pcl/__init__.py", line 2, in <module> from ._pcl import * ImportError: libpcl_keypoints.so.1.7: cannot open shared object file: No such file or directory
It appears that python-pcl depends on an obsolete version of the pcl library. When I list the available versions of this library I get the following:
apt-cache madison libpcl-dev libpcl-dev | 1.8.1+dfsg1-2ubuntu2.18.04.1 | http://us.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages libpcl-dev | 1.8.1+dfsg1-2ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
Your Environment
Context
I am trying to use the python-pcl library to process point cloud data from a Livox 100 lidar.
Expected Behavior
I expect to be able to import pcl with no errors in a python environment
Current Behavior
See above
Code to Reproduce
No code
I have attempted the following to try to resolve this issue
Uninstalled existing pcl libraries
Attempted to install pcl 1.7 but there is no 1.7 apt package
Attempted to build pcl 1.7.2 from source however I ran into a compiler error:
correspondence_estimation_normal_shooting.h:184:41: error: return-statement with a value, in function returning 'void' [-fpermissive] getKSearch () const { return (k_); }
Attempted to build pcl 1.70 from source however I ran into a complete compile failure with the following errors:
>}’ to ‘const Eigen::Map<const Eigen::Matrix<float, 4, 1>, 16>’ PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4]) ^
Attempted to follow installation instructions from http://www.pointclouds.org/downloads/linux.html, however they appear to be obsolete.
Attempted to follow the correction steps on https://github.com/strawlab/python-pcl/issues/317. However these steps failed. I do not show 1.7 in my apt list. I attempted to install the following and go this result
sudo apt-get install libpcl-dev=1.7.2-14build1 Reading package lists... Done Building dependency tree Reading state information... Done E: Version '1.7.2-14build1' for 'libpcl-dev' was not found
Did a
sudo apt update
probably 25-50 times during this entire process.Re-ran
pip install python-pcl
But I got the same error in the python console.Ran a python script that contained the following
import numpy import pcl
Got the following errorTraceback (most recent call last): File "test.py", line 2, in <module> import pcl File "/home/qurrent/.local/lib/python2.7/site-packages/pcl/__init__.py", line 2, in <module> from ._pcl import * ImportError: libpcl_keypoints.so.1.7: cannot open shared object file: No such file or directory qurrent@qurrent-
Attempted to download the .tar.gz and install it according to these instructions:
tar zxf python-pcl-0.3.0rc1.tar.gz cd python-pcl-0.3.0rc1 python setup.py install
Found on issue 317 Got the following error(s): `# pcl_base.htemplate
class PCLBase
cdef extern from "pcl/pcl_base.h" namespace "pcl": cdef cppclass PCLBase[PointT]: PCLBase ()
cython compilation errors
/_pcl_180.cpp -o build/temp.linux-x86_64-2.7/pcl/_pcl_180.o pcl/_pcl_180.cpp:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.error Do not use this file, it is the result of a failed Cython compilation.
^~~~~ error: command 'x86_64-linux-gnu-gcc' failed with exit status 1`
Other Questions What would it take to update python-pcl to work with modern versions of the PCL library and modern versions of Ubuntu, namely 18.04?
Any help on this would be great. I don't see any other leafs I can turn over to get this working. Is it still supported? Is it supposed to work on Ubuntu?
Thanks,
Jonathan L Clark