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

[compile error] test_outofcore doesn't compile #4033

Closed
SunBlack opened this issue May 4, 2020 · 17 comments · Fixed by #4081
Closed

[compile error] test_outofcore doesn't compile #4033

SunBlack opened this issue May 4, 2020 · 17 comments · Fixed by #4081
Labels
Milestone

Comments

@SunBlack
Copy link
Contributor

SunBlack commented May 4, 2020

After I updated my master I currently getting this with Clang 10:

In file included from /home/sunblack/dev/pcl/test/outofcore/test_outofcore.cpp:60:
In file included from /home/sunblack/dev/pcl/outofcore/include/pcl/outofcore/outofcore_impl.h:46:
/home/sunblack/dev/pcl/outofcore/include/pcl/outofcore/impl/octree_base.hpp:521:23: error: no viable overloaded '='
      lod_filter_ptr_ = filter_arg;
      ~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:309:19: note: candidate function not viable: no known conversion from 'const shared_ptr<Filter<pcl::PCLPointCloud2>>' to 'const shared_ptr<pcl::RandomSample<pcl::PCLPointCloud2>>' for 1st argument
      shared_ptr& operator=(const shared_ptr&) noexcept = default;
                  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:313:2: note: candidate template ignored: requirement 'is_assignable<std::__shared_ptr<pcl::RandomSample<pcl::PCLPointCloud2>, __gnu_cxx::_S_atomic> &, const std::shared_ptr<pcl::Filter<pcl::PCLPointCloud2> > &>::value' was not satisfied [with _Yp = pcl::Filter<pcl::PCLPointCloud2>]
        operator=(const shared_ptr<_Yp>& __r) noexcept
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:324:2: note: candidate template ignored: could not match 'auto_ptr' against 'shared_ptr'
        operator=(auto_ptr<_Yp>&& __r)
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:333:7: note: candidate function not viable: no known conversion from 'const shared_ptr<Filter<pcl::PCLPointCloud2>>' to 'shared_ptr<pcl::RandomSample<pcl::PCLPointCloud2>>' for 1st argument
      operator=(shared_ptr&& __r) noexcept
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:341:2: note: candidate template ignored: requirement 'is_assignable<std::__shared_ptr<pcl::RandomSample<pcl::PCLPointCloud2>, __gnu_cxx::_S_atomic> &, std::shared_ptr<pcl::Filter<pcl::PCLPointCloud2> > >::value' was not satisfied [with _Yp = pcl::Filter<pcl::PCLPointCloud2>]
        operator=(shared_ptr<_Yp>&& __r) noexcept
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/shared_ptr.h:349:2: note: candidate template ignored: could not match 'unique_ptr' against 'shared_ptr'
        operator=(unique_ptr<_Yp, _Del>&& __r)
        ^
1 warning and 1 error generated.
make[2]: *** [test/outofcore/CMakeFiles/test_outofcore.dir/build.make:63: test/outofcore/CMakeFiles/test_outofcore.dir/test_outofcore.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:13180: test/outofcore/CMakeFiles/test_outofcore.dir/all] Error 2
@SunBlack SunBlack added kind: compile error Type of issue status: triage Labels incomplete labels May 4, 2020
@kunaltyagi kunaltyagi modified the milestone: pcl-1.11.0 May 4, 2020
@SunBlack
Copy link
Contributor Author

SunBlack commented May 4, 2020

After switching to old revisions: Build is broken since #3750 is merged into master.

@kunaltyagi kunaltyagi added this to the pcl-1.11.0 milestone May 4, 2020
@kunaltyagi
Copy link
Member

That's very weird. Could you give more info on why the switch causes the errors?

@SunBlack
Copy link
Contributor Author

SunBlack commented May 4, 2020

Not really - that's why I posted it as issue and didn't just submitted a PR - my hope was someone might have an idea ;-)

@kunaltyagi
Copy link
Member

This issue isn't present for GCC? Or did our CI fail to catch it?

@kunaltyagi kunaltyagi added needs: author reply Specify why not closed/merged yet and removed module: outofcore labels May 5, 2020
@SunBlack
Copy link
Contributor Author

SunBlack commented May 5, 2020

GCC8 on the same machine:

/home/sunblack/dev/pcl/io/src/openni_camera/openni_driver.cpp: In member function ‘openni_wrapper::OpenNIDevice::Ptr openni_wrapper::OpenNIDriver::getDeviceByIndex(unsigned int) const’:
/home/sunblack/dev/pcl/io/src/openni_camera/openni_driver.cpp:291:17: error: could not convert ‘device’ from ‘std::shared_ptr<openni_wrapper::OpenNIDevice>’ to ‘openni_wrapper::OpenNIDevice::Ptr’ {aka ‘boost::shared_ptr<openni_wrapper::OpenNIDevice>’}
   return (device);
                 ^
make[2]: *** [io/CMakeFiles/pcl_io.dir/build.make:427: io/CMakeFiles/pcl_io.dir/src/openni_camera/openni_driver.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:537: io/CMakeFiles/pcl_io.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

This CI seems to not have trouble:

Scanning dependencies of target test_outofcore
[ 59%] Building CXX object test/outofcore/CMakeFiles/test_outofcore.dir/test_outofcore.cpp.o
[ 60%] Linking CXX executable test_outofcore
[ 60%] Built target test_outofcore

@aPonza
Copy link
Contributor

aPonza commented May 5, 2020

Hmmm... #3750 (comment) is false again then. It's part of the messy #3753 migration to have a single switch for weak pointers. The weak pointer is most definitely a std::weak_ptr at this moment, so I'd guess there's an unqualified shared_ptr in OpenNIDevice, which is also not the case.

Is it really a problem with the braces maybe, like it was some other time?

@aPonza
Copy link
Contributor

aPonza commented May 5, 2020

There's also no evident reason why it'd fail on test_outofcore to me.

I absolutely hadn't read the OP and focused on the last message, apologies for my haste.

@kunaltyagi
Copy link
Member

@SunBlack Can you reproduce this in a docker? Did you get this error even after a clean rebuild? (PS: if you use ccache, please don't use ccache for one clean rebuild and try again)

@SunBlack
Copy link
Contributor Author

SunBlack commented May 6, 2020

@docker: Currently not, but I use on my VM the same instructions like in the docker image (still with ubuntu 19.10), just a newer clang and additionally dependency to have a full build. And currently docker doesn't like me . So I can't really compare until now.

@ReBuild: I deleted the build directory of Clang 10 and cleaned the ccache-Cache - nevertheless I'm getting the same error. GCC 8 with cleaned build directory & disabled CCache in CMake is still in progress.

@SunBlack
Copy link
Contributor Author

SunBlack commented May 6, 2020

General question related to docker: Is the docker script in the repo here still correct?

I'm building it via docker build -t e64bf7b94862d622628f11dc096f64f20c1f820e --build-arg UBUNTU_DISTRO=20.04 -f pcl.dockerfile .

And then inside the image:

cmake ..  -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
                            -DPCL_WARNINGS_ARE_ERRORS=ON \
                            -DCMAKE_BUILD_TYPE="Release" \
                            -DCMAKE_CXX_FLAGS="-Wall -Wextra -O2" \
                            -DPCL_ONLY_CORE_POINT_TYPES=ON \
                            -DBUILD_simulation=ON \
                            -DBUILD_surface_on_nurbs=ON \
                            -DBUILD_global_tests=ON \
                            -DBUILD_examples=ON \
                            -DBUILD_tools=ON \
                            -DBUILD_apps=ON \
                            -DBUILD_apps_3d_rec_framework=ON \
                            -DBUILD_apps_cloud_composer=ON \
                            -DBUILD_apps_in_hand_scanner=ON \
                            -DBUILD_apps_modeler=ON \
                            -DBUILD_apps_point_cloud_editor=ON
							
cmake --build . -- -j$(nproc)

Result:

+ nproc
+ cmake --build . -- -j14
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_io_ply.so.1.10.1.99'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:2287: io/CMakeFiles/pcl_io_ply.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_people.so.1.10.1.99'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:6829: people/CMakeFiles/pcl_people.dir/all] Error 2
[  0%] Built target pcl_gtest
[  0%] Built target pcl_pcd_convert_NaN_nan
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_common.so.1.10.1.99'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:2091: common/CMakeFiles/pcl_common.dir/all] Error 2
make: *** [Makefile:152: all] Error 2

@kunaltyagi
Copy link
Member

Is the docker script in the repo here still correct?

We have the env docker CI up and running. Based on that, I'd say yes

No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so'

Are you using GCC? or Clang? CMake configuration (and the make command that fails VERBOSE make) is needed to know where the fault lies.

Did you try using pointcloudlibrary/env:20.04 docker image?

@SunBlack
Copy link
Contributor Author

SunBlack commented May 6, 2020

Did you try using pointcloudlibrary/env:20.04 docker image?

Yep

my config
pipeline {
    parameters {
        string(name: 'repo', defaultValue: 'https://github.com/PointCloudLibrary/pcl.git')
        string(name: 'revision', defaultValue: 'refs/heads/master')
    }

    options {
        buildDiscarder(logRotator(daysToKeepStr: '7', numToKeepStr: '25'))
        disableConcurrentBuilds()
    }
    
    agent {
        docker {
            image 'pointcloudlibrary/env:20.04'
        }
//        dockerfile {
//            filename 'pcl.dockerfile'
//            additionalBuildArgs  '--build-arg USE_CUDA=false --build-arg UBUNTU_DISTRO=20.04 --build-arg CUDA_VERSION=10.2'
//            additionalBuildArgs  '--build-arg UBUNTU_DISTRO=19.10'
//        }
    }
    
    stages {
        stage('Checkout') {
            steps {
                checkout([$class: 'GitSCM',
                    branches: [[name: params.revision]],
                    userRemoteConfigs: [[url: params.repo]]
                ])
            }
        }
        stage('CMake') {
            steps {
                dir('build') {
                    sh script: '''
                        cmake ..  -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
                            -DPCL_WARNINGS_ARE_ERRORS=ON \
                            -DCMAKE_BUILD_TYPE="Release" \
                            -DCMAKE_CXX_FLAGS="-Wall -Wextra -O2" \
                            -DPCL_ONLY_CORE_POINT_TYPES=ON \
                            -DBUILD_simulation=ON \
                            -DBUILD_surface_on_nurbs=ON \
                            -DBUILD_global_tests=ON \
                            -DBUILD_examples=ON \
                            -DBUILD_tools=ON \
                            -DBUILD_apps=ON \
                            -DBUILD_apps_3d_rec_framework=ON \
                            -DBUILD_apps_cloud_composer=ON \
                            -DBUILD_apps_in_hand_scanner=ON \
                            -DBUILD_apps_modeler=ON \
                            -DBUILD_apps_point_cloud_editor=ON
                    '''
                }
            }
        }
        stage('Compile') {
            steps {
                dir('build') {
                    sh script: 'cmake --build . -- -j$(nproc)'
                }
            }
        }
    }
}
Log
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on YourNode in /jenkins/workspace/pcl-official-clang-tidy
[Pipeline] {
[Pipeline] isUnix
[Pipeline] sh
+ docker inspect -f . pointcloudlibrary/env:20.04
.
[Pipeline] withDockerContainer
YourNode does not seem to be running inside a container
$ docker run -t -d -u 106:112 -w /jenkins/workspace/pcl-official-clang-tidy -v /jenkins/workspace/pcl-official-clang-tidy:/jenkins/workspace/pcl-official-clang-tidy:rw,z -v /jenkins/workspace/pcl-official-clang-tidy@tmp:/jenkins/workspace/pcl-official-clang-tidy@tmp:rw,z -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** pointcloudlibrary/env:20.04 cat
$ docker top 88fa605d8f41696272b22049cdb66dd0e9c9564da14cd3c6e223787d04fff7c8 -eo pid,comm
[Pipeline] {
[Pipeline] stage
[Pipeline] { (error)
[Pipeline] checkout
No credentials specified
Warning: JENKINS-30600: special launcher org.jenkinsci.plugins.docker.workflow.WithContainerStep$Decorator$1@6552e3ae; decorates RemoteLauncher[hudson.remoting.Channel@7d8f726:JNLP4-connect connection from xen0.hpi3d.de/141.89.225.16:43072] will be ignored (a typical symptom is the Git executable not being run inside a designated container)
Fetching changes from the remote Git repository
Checking out Revision b6962198a130c0349bea5e5f02415d77ca62cbf2 (refs/remotes/origin/master)
Commit message: "[CI] Improve docker ci for other PRs (#4051)"
 > git rev-parse --is-inside-work-tree # timeout=10
 > git config remote.origin.url https://github.com/PointCloudLibrary/pcl.git # timeout=10
Fetching upstream changes from https://github.com/PointCloudLibrary/pcl.git
 > git --version # timeout=10
 > git fetch --tags --progress -- https://github.com/PointCloudLibrary/pcl.git +refs/heads/*:refs/remotes/origin/* # timeout=10
 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10
 > git rev-parse refs/remotes/origin/refs/heads/master^{commit} # timeout=10
 > git config core.sparsecheckout # timeout=10
 > git checkout -f b6962198a130c0349bea5e5f02415d77ca62cbf2 # timeout=10
 > git rev-list --no-walk b6962198a130c0349bea5e5f02415d77ca62cbf2 # timeout=10
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (CMake)
[Pipeline] dir
Running in /jenkins/workspace/pcl-official-clang-tidy/build
[Pipeline] {
[Pipeline] sh
+ cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DPCL_WARNINGS_ARE_ERRORS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-Wall -Wextra -O2 -DPCL_ONLY_CORE_POINT_TYPES=ON -DBUILD_simulation=ON -DBUILD_surface_on_nurbs=ON -DBUILD_global_tests=ON -DBUILD_examples=ON -DBUILD_tools=ON -DBUILD_apps=ON -DBUILD_apps_3d_rec_framework=ON -DBUILD_apps_cloud_composer=ON -DBUILD_apps_in_hand_scanner=ON -DBUILD_apps_modeler=ON -DBUILD_apps_point_cloud_editor=ON
-- Could NOT find ClangFormat (missing: ClangFormat_EXECUTABLE ClangFormat_VERSION) (Required is at least version "10")
-- Found OpenMP: TRUE  found components: C CXX 
-- Found OpenMP, spec date 201511
-- Eigen found (include: /usr/include/eigen3, version: 3.3.7)
-- OpenNI found (include: /usr/include/ni, lib: /usr/lib/libOpenNI.so)
-- OpenNI2 found (include: /usr/include/openni2, lib: /usr/lib/libOpenNI2.so)
-- Ensenso found (include: /opt/ensenso/development/c/include, lib: /usr/lib/libNxLib64.so)
CMake Warning (dev) at /usr/local/lib/cmake/realsense2/realsense2Targets.cmake:28 (if):
  Policy CMP0054 is not set: Only interpret if() arguments as variables or
  keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  Quoted variables like "" will no longer be dereferenced when the policy is
  set to NEW.  Since the policy is not set the OLD behavior will be used.
Call Stack (most recent call first):
  /usr/local/lib/cmake/realsense2/realsense2Config.cmake:35 (include)
  cmake/Modules/FindRSSDK2.cmake:12 (find_package)
  cmake/pcl_targets.cmake:836 (find_package)
  CMakeLists.txt:318 (PCL_ADD_GRABBER_DEPENDENCY)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at /usr/local/lib/cmake/realsense2/realsense2Targets.cmake:36 (if):
  Policy CMP0054 is not set: Only interpret if() arguments as variables or
  keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  Quoted variables like "" will no longer be dereferenced when the policy is
  set to NEW.  Since the policy is not set the OLD behavior will be used.
Call Stack (most recent call first):
  /usr/local/lib/cmake/realsense2/realsense2Config.cmake:35 (include)
  cmake/Modules/FindRSSDK2.cmake:12 (find_package)
  cmake/pcl_targets.cmake:836 (find_package)
  CMakeLists.txt:318 (PCL_ADD_GRABBER_DEPENDENCY)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- RealSense SDK 2 found (include: /usr/local/include, lib: realsense2::realsense2, version: 2.23.0)
-- Checking for module 'metslib'
--   No package 'metslib' found
-- QHULL found (include: /usr/include, lib: optimized;/usr/lib/x86_64-linux-gnu/libqhull.so;debug;/usr/lib/x86_64-linux-gnu/libqhull.so)
CMake Warning (dev) at /usr/lib/cmake/vtk-7.1/VTKTargets.cmake:28 (if):
  Policy CMP0054 is not set: Only interpret if() arguments as variables or
  keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  Quoted variables like "" will no longer be dereferenced when the policy is
  set to NEW.  Since the policy is not set the OLD behavior will be used.
Call Stack (most recent call first):
  /usr/lib/cmake/vtk-7.1/VTKConfig.cmake:69 (include)
  CMakeLists.txt:390 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at /usr/lib/cmake/vtk-7.1/VTKTargets.cmake:36 (if):
  Policy CMP0054 is not set: Only interpret if() arguments as variables or
  keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  Quoted variables like "" will no longer be dereferenced when the policy is
  set to NEW.  Since the policy is not set the OLD behavior will be used.
Call Stack (most recent call first):
  /usr/lib/cmake/vtk-7.1/VTKConfig.cmake:69 (include)
  CMakeLists.txt:390 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- The imported target "vtkParseOGLExt" references the file
   "/usr/bin/vtkParseOGLExt-7.1"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "vtkRenderingPythonTkWidgets" references the file
   "/usr/lib/x86_64-linux-gnu/libvtkRenderingPythonTkWidgets.so"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "vtk" references the file
   "/usr/bin/vtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- The imported target "pvtk" references the file
   "/usr/bin/pvtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-7.1/VTKTargets.cmake"
but not all the files it references.

-- VTK_MAJOR_VERSION 7, rendering backend: OpenGL2
-- VTK found (include: /usr/include/vtk-7.1;/usr/include/freetype2;/usr/include;/usr/include/x86_64-linux-gnu, libs: vtkChartsCore;vtkCommonColor;vtkCommonCore;vtksys;vtkCommonDataModel;vtkCommonMath;vtkCommonMisc;vtkCommonSystem;vtkCommonTransforms;vtkCommonExecutionModel;vtkFiltersGeneral;vtkCommonComputationalGeometry;vtkFiltersCore;vtkInfovisCore;vtkFiltersExtraction;vtkFiltersStatistics;vtkImagingFourier;vtkImagingCore;vtkalglib;vtkRenderingContext2D;vtkRenderingCore;vtkFiltersGeometry;vtkFiltersSources;vtkRenderingFreeType;/usr/lib/x86_64-linux-gnu/libfreetype.so;/usr/lib/x86_64-linux-gnu/libz.so;vtkFiltersModeling;vtkImagingSources;vtkInteractionStyle;vtkInteractionWidgets;vtkFiltersHybrid;vtkImagingColor;vtkImagingGeneral;vtkImagingHybrid;vtkIOImage;vtkDICOMParser;vtkmetaio;/usr/lib/x86_64-linux-gnu/libjpeg.so;/usr/lib/x86_64-linux-gnu/libpng.so;/usr/lib/x86_64-linux-gnu/libtiff.so;vtkRenderingAnnotation;vtkRenderingVolume;vtkIOXML;vtkIOCore;vtkIOXMLParser;/usr/lib/x86_64-linux-gnu/libexpat.so;vtkIOGeometry;vtkIOLegacy;vtkIOPLY;vtkRenderingLOD;vtkViewsContext2D;vtkViewsCore;vtkRenderingContextOpenGL2;vtkRenderingOpenGL2
-- Could NOT find PCAP (missing: PCAP_LIBRARIES PCAP_INCLUDE_DIRS) 
-- Found GLEW: /usr/include (found version "2.1.0") 
-- Could NOT find GLUT (missing: GLUT_glut_LIBRARY GLUT_INCLUDE_DIR) 
-- GTest found (include: /usr/include, src: /usr/src/gtest)
-- DOXYGEN_FOUND 
-- HTML_HELP_COMPILER 
-- Found CPack generators: DEB
-- The following subsystems will be built:
--   common
--   kdtree
--   octree
--   search
--   sample_consensus
--   filters
--   2d
--   geometry
--   io
--   features
--   ml
--   segmentation
--   visualization
--   surface
--   registration
--   keypoints
--   tracking
--   recognition
--   stereo
--   apps
       building: 
       |_ 3d_rec_framework
       |_ in_hand_scanner
       |_ point_cloud_editor
       not building: 
       |_ cloud_composer: Cloud composer requires QVTK
       |_ modeler: VTK was not built with Qt support.
--   outofcore
--   examples
--   people
--   simulation
--   global_tests
--   tests_2d
--   tests_common
--   tests_features
--   tests_filters
--   tests_geometry
--   tests_io
--   tests_kdtree
--   tests_keypoints
--   tests_people
--   tests_octree
--   tests_outofcore
--   tests_recognition
--   tests_registration
--   tests_search
--   tests_surface
--   tests_segmentation
--   tests_sample_consensus
--   tests_visualization
--   tools
-- The following subsystems will not be built:
-- Configuring done
-- Generating done
-- Build files have been written to: /jenkins/workspace/pcl-official-clang-tidy/build
[Pipeline] }
[Pipeline] // dir
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Compile)
[Pipeline] dir
Running in /jenkins/workspace/pcl-official-clang-tidy/build
[Pipeline] {
[Pipeline] sh
+ nproc
+ cmake --build . -- -j14
Scanning dependencies of target pcl_people
Scanning dependencies of target pcl_pcd_convert_NaN_nan
Scanning dependencies of target pcl_io_ply
Scanning dependencies of target pcl_gtest
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_io_ply.so.1.10.1.99'.  Stop.
make[2]: *** Waiting for unfinished jobs....
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_people.so.1.10.1.99'.  Stop.
make[2]: *** Waiting for unfinished jobs....
[  0%] Building CXX object people/CMakeFiles/pcl_people.dir/src/hog.cpp.o
[  0%] Building CXX object io/CMakeFiles/pcl_io_ply.dir/src/ply/ply_parser.cpp.o
[  0%] Building CXX object io/tools/CMakeFiles/pcl_pcd_convert_NaN_nan.dir/pcd_convert_NaN_nan.cpp.o
[  0%] Building CXX object test/CMakeFiles/pcl_gtest.dir/usr/src/gtest/src/gtest-all.cc.o
Scanning dependencies of target pcl_common
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/point_types.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/PCLPointCloud2.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/pcl_base.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/print.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/io.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/common.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/correspondence.cpp.o
[  0%] Building CXX object common/CMakeFiles/pcl_common.dir/src/parse.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/poses_from_matches.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/distances.cpp.o
[  1%] Linking CXX executable ../../bin/pcl_pcd_convert_NaN_nan
[  1%] Built target pcl_pcd_convert_NaN_nan
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/projection_matrix.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/time_trigger.cpp.o
make[1]: *** [CMakeFiles/Makefile2:6236: people/CMakeFiles/pcl_people.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/gaussian.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/colors.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/feature_histogram.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/range_image.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/bearing_angle_image.cpp.o
[  1%] Building CXX object common/CMakeFiles/pcl_common.dir/src/range_image_planar.cpp.o
[  1%] Building C object common/CMakeFiles/pcl_common.dir/src/fft/kiss_fft.c.o
make[2]: *** No rule to make target '/usr/lib/gcc/x86_64-linux-gnu/7/libgomp.so', needed by 'lib/libpcl_common.so.1.10.1.99'.  Stop.
make[2]: *** Waiting for unfinished jobs....
[  2%] Building C object common/CMakeFiles/pcl_common.dir/src/fft/kiss_fftr.c.o
[  2%] Linking CXX static library ../lib/libpcl_gtest.a
[  2%] Built target pcl_gtest
make[1]: *** [CMakeFiles/Makefile2:2261: io/CMakeFiles/pcl_io_ply.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2065: common/CMakeFiles/pcl_common.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
[Pipeline] }
[Pipeline] // dir
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Clang-Tidy)
Stage "Clang-Tidy" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
$ docker stop --time=1 88fa605d8f41696272b22049cdb66dd0e9c9564da14cd3c6e223787d04fff7c8
$ docker rm -f 88fa605d8f41696272b22049cdb66dd0e9c9564da14cd3c6e223787d04fff7c8
[Pipeline] // withDockerContainer
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code 2
Finished: FAILURE

With 16.04 I don't have trouble.

@kunaltyagi
Copy link
Member

Are you using GCC? or Clang? CMake configuration (and the make command that fails VERBOSE make)

@SunBlack
Copy link
Contributor Author

SunBlack commented May 6, 2020

As you can see I don't set any environment, so I think it should be gcc (interesting that CMake doesn't say anything, which compiler is selected).

@SunBlack
Copy link
Contributor Author

SunBlack commented May 6, 2020

Now locally without disabled ccache & cleaned build dir:

  • Clang 10: Failed
  • GCC 8: Succeeded

Docker-Image:

  • UBUNTU_DISTRO=16.04: Works
  • UBUNTU_DISTRO=18.04: Works
  • UBUNTU_DISTRO=19.10: Fails
  • UBUNTU_DISTRO=20.04: Fails

@Ultraopxt
Copy link

I have the same problem.How to slove it?

@mvieth
Copy link
Member

mvieth commented Apr 14, 2021

I have the same problem.How to slove it?

The linked pull request should fix the problem. Please try again with a newer PCL version (1.11.1 or current master branch).

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