我正在尝试学习GStreamer。我正在使用macOS 10.13-x86_64。
我开始使用这个教程进行工作。
最初,我安装了GStreamer的.pkg文件。
GStreamer被安装在
我成功编译并运行了教程,但我需要使用
后来我发现我可以通过homebrew安装GStreamer。
所以,我手动删除了
不幸的是,这个教程现在会抛出运行时错误。
我尝试使用lldb调试错误(我对lldb非常陌生,几乎什么都不会)。
“我不知道该怎么处理这个。”
“我用编译器编译代码。”
我有以下配置。
您能帮我吗?有什么问题吗?
我开始使用这个教程进行工作。
最初,我安装了GStreamer的.pkg文件。
GStreamer被安装在
/Library/Frameworks/GStreamer.framework
中。我成功编译并运行了教程,但我需要使用
sudo
来访问/Library/Frameworks/GStreamer.framework
目录。后来我发现我可以通过homebrew安装GStreamer。
所以,我手动删除了
/Library/Frameworks/GStreamer.framework
并运行了以下命令:brew install gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav
不幸的是,这个教程现在会抛出运行时错误。
./basic-1
[1] 1873 illegal hardware instruction ./basic-1
我尝试使用lldb调试错误(我对lldb非常陌生,几乎什么都不会)。
lldb basic-1
(lldb) target create "basic-1"
Current executable set to 'basic-1' (x86_64).
(lldb) run
Process 2129 launched: '/Users/aleksey/projects/media/gstreamer-dummy/basic-1' (x86_64)
Process 2129 stopped
* thread #14, stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
frame #0: 0x00007fff3b0e3939 CoreFoundation`__CFRunLoopDeallocate + 537
CoreFoundation`__CFRunLoopDeallocate:
-> 0x7fff3b0e3939 <+537>: ud2
0x7fff3b0e393b <+539>: nopl (%rax,%rax)
CoreFoundation`__CFRunLoopCleanseSources:
0x7fff3b0e3940 <+0>: pushq %rbp
0x7fff3b0e3941 <+1>: movq %rsp, %rbp
Target 0: (basic-1) stopped.
“我不知道该怎么处理这个。”
“我用编译器编译代码。”
gcc -Wall basic-tutorial-1.c -o basic-1 $(pkg-config --cflags --libs gstreamer-1.0)
我有以下配置。
$ pkg-config --cflags --libs gstreamer-1.0
-D_REENTRANT -I/usr/local/Cellar/gstreamer/1.12.3/include/gstreamer-1.0 -I/usr/local/Cellar/glib/2.54.1/include/glib-2.0 -I/usr/local/Cellar/glib/2.54.1/lib/glib-2.0/include -I/usr/local/opt/gettext/include -I/usr/local/Cellar/pcre/8.41/include -L/usr/local/Cellar/gstreamer/1.12.3/lib -L/usr/local/Cellar/glib/2.54.1/lib -L/usr/local/opt/gettext/lib -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl -Wl,-framework -Wl,CoreFoundation
您能帮我吗?有什么问题吗?