将C程序与libclBLAS连接起来

w8f9ii69  于 2023-10-16  发布在  其他
关注(0)|答案(1)|浏览(120)

我正试着开始使用clBLAS。
我在Linux 64位上使用ACL 1.0 Beta 1的clBLAS-2.6.0版本。从examples目录下载的二进制文件在我的硬件上运行良好,但我的努力是从源代码编译其中最简单的,并将其链接到共享库。
树目录看起来像这样:

.
├── clBlasVersion.c
├── include
│   ├── clAmdBlas.h
│   ├── clAmdBlas.version.h
│   ├── clBLAS-complex.h
│   ├── clBLAS.h
│   └── clBLAS.version.h
└── lib
    └── libclBLAS.so

我使用gcc(Ubuntu 4.8.4- 2ubuntu 1 ~14.04)4.8.4和以下命令:

gcc -Iinclude -Llib clBlasVersion.c

失败,链接错误:

/tmp/ccC9kQ9C.o: In function `main':
clBlasVersion.c:(.text+0x1b): undefined reference to `clblasGetVersion'
collect2: error: ld returned 1 exit status

AMDAPPSDKROOT是在环境和二进制文件中设置的,它包含在发布中,工作时显示clblas的正确版本。有没有什么建议我错过了?

aemubtdh

aemubtdh1#

您告诉链接器在lib文件夹中查找它可能需要的库(-L)选项,但您没有指定要链接的库。
尝试使用-l选项,如

gcc -Iinclude -Llib -lclBLAS clBlasVersion.c

相关问题