0

我正在运行 OSX 10.9.2

我已经成功编译并运行了wiiuse的示例程序。然而,这意味着用 CMake 制作一个 makefile,然后运行 ​​make。不过,我对如何使用这个库编译我自己的程序感到困惑。作为第一步,我尝试自己重新编译示例程序。我创建了一个包含 example.c 和 wiiuse.h 的目录。当我跑

clang example.c -lwiiuse -o example

我明白了

ld: library not found for -lwiiuse
clang: error: linker command failed with exit code 1 (use -v to see invocation)

是什么赋予了?为什么不能包含库?

4

1 回答 1

0

由于该评论碰巧适用于 OP,因此我将其写成答案。

在常规 Unix 上,可以gcc使用选项-Lpath/to/location/of/so_file.

在运行编译后的二进制文件时,将设置LD_LIBRARY_PATH为包含相同的路径。

显然这种方法也适用于 OS X。

LD_LIBRARY_PATH在运行时设置,只需在实际程序之前添加赋值命令:

LD_LIBRARY_PATH=/path/to/folder/containing/my/lib ./example
于 2014-06-29T04:40:41.330 回答