zoukankan      html  css  js  c++  java
  • 安装PCL(编译方式安装,填平之前的坑)

    编译方式安装PCL

    我的机器环境:

    Ubuntu16.04

    OpenGL1.1

    CUDA10.2

    GPU:RTX2028Ti

    QT5提前安装好了

    因为PCL版本和VTK版本时依赖的关系,不是随意的VTK版本能够匹配随意的PCL版本,而且PCL1.10及其以后是只支持C++14标准的,我是想用c++11标准,而且我的机器是OpenGL1.1

    升级OpenGL网上是没有教程的,所以我选择了最高的支持OpenGL1版本的最新VTK是7.1.1版本。

    1.安装cmake-gui

    sudo apt-get install cmake-gui

    2.安装依赖请看https://www.cnblogs.com/nanmi/p/12858586.html

    安装一些其他依赖,编译这个事就是i需要依赖很多

    sudo apt install libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev
    sudo apt install libgl1-mesa-dev libglu1-mesa-dev
    sudo apt install freeglut3-dev libboost-all-dev libeigen3-dev libflann-dev libglew-dev
    sudo apt install libpcap-dev libusb-1.0-0-dev libopenni-dev libopenni2-dev clang-format libqhull-dev

    3.安装metslib

    很老的代码库,metslib-0.5.3应该是最新版本不会再有更新。也是源码编译安装。

    wget https://www.coin-or.org/download/source/metslib/metslib-0.5.3.tgz
    tar xzvf metslib-0.5.3.tgz
    cd metslib-0.5.3
    ./configure
    make -j{线程数}
    sudo make install

    4.安装VTK-7.1.1

    VTK官网下载 ,记得下载7.1.1版本,原因在文章开头解释了,进行编译安装。

    tar xzvf VTK-7.1.1.tar.gz
    cd VTK-7.1.1
    mkdir build && cd build
    ccmake ..

    然后出现配置交互界面,按c键

    配置CMAKE_INSTALL_PREFIX:自定义路径、VTK_Group_Views:ON、VTK_RENDERING_BACKEND:根据你的OpenGL版本选择,查看方式如下面代码、VTK_PYTHON_VERSION:自己系统python版本、QT_VERSION:你的安装过的QT版本

    //test.cpp
    #include <stdio.h>
    #include <GL/glut.h>
    
    int main(int argc, char** argv)
    {
        glutInit(&argc,argv);
        //显示模式初始化
        glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH);
        //定义窗口大小
        glutInitWindowSize(300,300);
        //定义窗口位置
        glutInitWindowPosition(100,100);
        //创建窗口
        glutCreateWindow("OpenGL Version");
        const GLubyte* name = glGetString(GL_VENDOR); //返回负责当前OpenGL实现厂商的名字
        const GLubyte* biaoshifu = glGetString(GL_RENDERER); //返回一个渲染器标识符,通常是个硬件平台
        const GLubyte* OpenGLVersion =glGetString(GL_VERSION); //返回当前OpenGL实现的版本号
        //const GLubyte* Extensions  =glGetString(GL_EXTENSIONS);
        const GLubyte* gluVersion= gluGetString(GLU_VERSION); //返回当前GLU工具库版本
        printf("OpenGL实现厂商的名字:%s
    ", name);
        printf("渲染器标识符:%s
    ", biaoshifu);
        printf("OpenGL实现的版本号:%s
    ",OpenGLVersion );
        //printf("OpenGL支持的扩展:%s
    ",Extensions );
        printf("OGLU工具库版本:%s
    ", gluVersion);
        //system("pause");  如果是windows
        return 0;
    }

    然后g++ test.cpp -o test   ->  ./test

    配置好后按c键,然后按g保存并生成

    然后

    make -j{线程数}
    sudo make install

    如果不是安装在系统环境,记得添加环境变量

    5.安装PCL-1.9.1

    下载pcl源码并编译安装。访问pcl的github release页面,这里选择下载最新发布的1.9.1的Source code (tar.gz)。

    tar -xzvf pcl-pcl-1.9.1.tar.gz
    cd pcl-pcl-1.9.1
    mkdir build && cd build
    ccmake ..

    按c键,配置BUILD_global_tests:ON、BUILD_surface_on_nurbs:ON、CMAKE_INSTALL_PREFIX:你的安装路径、VTK_DIR:你的VTK安装路径/lib/cmake/vtk-7.1

    再次按c键,再按g键保存并生成makefile

    然后

    make -j{你的机器支持的最大线程数}
    sudo make install

    ok!安装完成

  • 相关阅读:
    JNI 对象处理 (转)
    快速配置vs2012+opencv
    Jni中C++和Java的参数传递(转)
    版本控制之四:SVN客户端重新设置帐号和密码(转)
    版本控制之三:SVN合并及解决冲突(转)
    版本控制之二:SVN的初步使用(转)
    版本控制之一:SVN服务器搭建与安装(转)
    xml读取一行数据
    方法论:怎样练习一万小时
    一位软件工程师的6年总结(转)
  • 原文地址:https://www.cnblogs.com/nanmi/p/12918963.html
Copyright © 2011-2022 走看看