我在Raspberry Pi上的Raspbian中安装了“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)
软件包名称sdl
和libvlc
对应于*.pc
中安装的/usr/lib/pkgconfig
文件。如果不存在此类文件,则表示您忘记安装sdl和vlc库的-dev
版本。因此,请检查是否需要安装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
,你可能会错过一些插件和东西