您的位置:首页 > 运维架构

NVIDIA官方提供的OpenCL实例在Ubuntu14.04编译遇到的问题

2016-12-11 10:04 543 查看
NVIDIA官方提供的OpenCL实例在Ubuntu14.04编译遇到的问题

问题1:提示shared 文件夹,没有Makefile 文件



解决办法:

  将OpenCL/common/下的Makefile copy 过来并修改。

  CCFILES := oclUtils.cpp

  SRCDIR := src/

  STATIC_LIB := liboclUtil.a

  ROOTDIR := ../../

  include ../common/common_opencl.mk

  修改为:

  CCFILES := cmd_arg_reader.cpp shrUtils.cpp

  SRCDIR := src/

  STATIC_LIB := libshrutil.a

  ROOTDIR := ../

  include ../OpenCL/common/common_opencl.mk

问题2:提示找不到exception.h 文件

    如果已经下载”NVIDIA_CUDA-7.5_Samples“,将 NVIDIA_CUDA-7.5_Samples/common/inc 目录下的次文件copy 到 common 下的 inc 目录下。

    如果没有加下再,可以使用locate 命令收索,如果能找到,copy到common/inc 目录下,此方法没有实验过,猜测可行。

问题3: 提示找不到GLEW 库:”找不到 -lGLEW_x86_64“,原因时Ubuntu14.04 的lib库中路径和编译Makefile 文件中指定的OpenGL库路径不一样,或者系统中没有a安装OpenGL 库。

   解决办法:先安装 openGL 库.

            sudo apt-get install libglew-dbg  libglew-dev libglew1.10 libglewmx-dbg libglewmx-dev libglewmx1.10  glew-utils ros-indigo-qglv-toolkit

          


          然后打开OpenCL/common 路径下的    common_opencl.mk 文件,修改

    OPENGLLIB := -lGL -lGLU -lX11 -lXmu

                ifeq "$(strip $(HP_64))" ""

                        OPENGLLIB += -lGLEW -L/usr/X11R6/lib

                else

                        OPENGLLIB += -lGLEW_x86_64 -L/usr/X11R6/lib64

                endif   

    为

    OPENGLLIB := -lGL -lGLU -lXmu -lglut

                ifeq "$(strip $(HP_64))" ""

                        OPENGLLIB += -lGLEW -L/usr/X11R6/lib

                else

                        OPENGLLIB += -lGLEW -L/usr/lib/x86_64-linux-gnu

                endif

    如果是32 位的ubuntu 的系统,请修改 OPENGLLIB += -lGLEW -L/usr/X11R6/lib 这行。

下面是编译 SimpleTexture3D 效果:

   


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nvidia opencl