我是BigCompany的新手,我得到了一个子系统,并被告知在Linux下构建它,因为我愚蠢到建议进行单元测试(从来没有单元测试&目前所有的构建都是为ARM处理器构建的)。
一些没有人知道的代码使用GStreamer。它有这样的语句
#include "gst/gst.h"
#include "gst/gsttaglist.h"这给GCC带来了错误
fatal error: gst/gst.h: No such file or directory 我打招呼,发现它在里面
/opt/tooling/imx6-staging/DI_BINARY_REPOSITORY_IMX6_LINUX_14.0F46/usr/include/gstreamer-0.10/gst/gst.h
所以我去了项目属性/C& C++通用/路径和符号,并添加了
/opt/tooling/imx6-staging/DI_BINARY_REPOSITORY_IMX6_LINUX_14.0F46/usr/include/gstreamer-0.10
走到小路上。错误持续存在。
我还尝试将gstreamer-0.10添加到库中,但没有结果。
如何让它在Eclipse中编译?
发布于 2014-12-05 19:01:21
你做的是对的,斯考特的描述是正确的。但是,在我的经验中,跟踪所有的GStreamer和GLib路径是一件很痛苦的事情,而且我似乎一直不喜欢手动添加这些路径。
对于我们的Eclipse项目,我们发现最有用的构建工具是CMake。它也是一个Makefile make工具,提供Eclipse项目文件生成。因此,在一个文件CMakeLists.txt中,我们可以看到这样的内容:
cmake_minimum_required(VERSION 2.8)
project(myproj)
include(FindPkgConfig)
pkg_check_modules(GST REQUIRED gstreamer-app-1.0)
pkg_check_modules(LIBLOG4CXX REQUIRED liblog4cxx)
include_directories(${GST_INCLUDE_DIRS} ${LIBLOG4CXX_INCLUDE_DIRS})
link_directories(${GST_LIBRARY_DIRS} ${LIBLOG4CXX_LIBRARY_DIRS})
add_executable(myproj myproj.cpp)
target_link_libraries(myproj ${GST_LIBRARIES} ${LIBLOG4CXX_LIBRARIES})然后,在命令行中,我将环境指向我使用的任何pkg-config路径,并运行cmake。
export PKG_CONFIG_PATH=/opt/whatever/pkgconfig
cmake --clean-first . -G "Eclipse CDT4 - Unix Makefiles"现在在Eclipse中打开这个项目。你可能不得不索引->重建,但在那之后,它在我的经验中发挥了很大作用。
这样做的另一个好处是,如果您正在处理一个团队项目,您不必为每个项目成员手工创建Eclipse项目文件,也不必尝试在用户之间共享特定于机器的项目文件。
发布于 2014-12-04 02:38:38
有一个选项可以向项目添加包含路径和包含文件:
项目->属性-> C/C++构建->设置->工具设置选项卡->包括->包含文件/路径->添加。(通过图标)
发布于 2015-01-25 06:00:30
添加h文件后,转到Project->Properties->C/C++ Build->Settings->Cross GCC Linker->Libraries。按下add按钮并输入您的库名:"gstreamer-0.10“。希望这能有所帮助。
https://stackoverflow.com/questions/27272152
复制相似问题