如何在 Raspbian C++ 项目上"include" libvlc 和 sdl1.2?



我已经在我的Raspberry Pi上安装了"libsdl1.2-dev"和"libvlc"(使用sudo apt-get install blah(,我正在使用gcc从 https://wiki.videolan.org/LibVLC_SampleCode_SDL/编译示例项目

这是我的编译命令:

gcc -fpermissive test.cpp -lvlc -lsdl1.2-dev -o test

似乎编译(在我添加 -fpermissive 并手动将 vlc 标头放置在 usr/include/vlc 中之后(错误似乎发生在链接阶段,我得到这两个错误;

/usr/bin/ld: cannot find -lvlc
/usr/bin/ld: cannot find -lsdl1.2-dev

我对 Linux 有点陌生,我不知道为什么它找不到它们。我也不确定默认情况下它会在哪里安装它们,它们似乎有几个不同的地方。

使用 pkg-config 获取所需的编译和链接标志。 pkg-config --cflags sdl libvlc将打印所需的编译标志,并pkg-config --libs sdl libvlc所需的链接标志。您可以使用 shell 的$()功能将 pkg-config 的输出直接嵌入到编译命令中。此外,使用 g++ 编译和链接C++代码。 gcc 用于 C 代码。

g++ $(pkg-config --cflags sdl libvlc) -fpermissive test.cpp -o test $(pkg-config --libs sdl libvlc)

软件包名称sdllibvlc对应于安装在 /usr/lib/pkgconfig 中的*.pc文件。如果不存在此类文件,则意味着您忘记安装 -dev 版本的 sdl 和 vlc 库。因此,请检查是否需要安装libvlc-dev软件包。使用这个:

apt-cache search vlc | grep dev

查看是否有您需要的 libvlc 开发包。

要安装库和头文件,请尝试sudo apt-get install libvlc-dev这应该将所有依赖库安装在正确的库路径中。 sudo apt-get install vlc用于安装您不需要的应用程序。

尝试sudo apt-get install vlc,您可能缺少一些插件和东西

最新更新