Makefile和库的不良依赖关系
Makefile and library bad dependencies?
我想在gtkmm/glade/c++上使用一些opencv类。在包含任何opencv代码之后,它工作得很好,但是如果我像这样将opencv添加到库中:libs = 'pkg-config…Opencv——libs的应用程序停止工作。在main的第一行(Gnome::Gda::init();)它崩溃与分割错误
Makefile
LD = g++
LIBS = `pkg-config gtkmm-2.4 glibmm-2.4 libgdamm-4.0 --libs`
CPPFLAGS = `pkg-config gtkmm-2.4 glibmm-2.4 libgdamm-4.0 --cflags`
OBJS = main.o TreeviewImages.o MainWindow.o FormDialog.o DBUtil.o
all: build
build: $(OBJS)
$(LD) $(LIBS) $(OBJS) -o cish
main.o: main.cpp
g++ $(CPPFLAGS) -c main.cpp
MainWindow.o: MainWindow.cpp MainWindow.h DBUtil.h FormDialog.h
g++ $(CPPFLAGS) -c MainWindow.cpp
TreeviewImages.o: TreeviewImages.cpp TreeviewImages.h
g++ $(CPPFLAGS) -c TreeviewImages.cpp
FormDialog.o: FormDialog.cpp FormDialog.h DBUtil.h
g++ $(CPPFLAGS) -c FormDialog.cpp
DBUtil.o: DBUtil.cpp DBUtil.h
g++ $(CPPFLAGS) -c DBUtil.cpp
clean:
rm -f cish $(OBJS)
任何线索/提示/帮助将不胜感激!
链接时把库放在哪里会有很大的不同。
如果你有一个库libbeexample,使用:
g++ -lexample myprog2.o
如果myprog2正在引用这些库函数,将无法加载它们。
而不是使用:
g++ myprog2.o -lexample
即在对象文件的引用后添加$(LIBS)
相关文章:
- C++GTKMM gui循环依赖关系
- 如何在头文件中声明类模板(由于循环依赖关系)
- 对在不同二进制文件中创建的对象文件的依赖关系
- 使用Bazel构建具有不同编译器/链接器选项的C/C++依赖关系
- OpenVINO - 推理库插件 libMKLDNNPlugin.so 无法解析依赖关系
- 模拟测试中类的依赖关系
- C++模板方法中的循环依赖关系
- 解析正交模块的依赖关系
- 如何在 Mac OS 上安装 boost-mpi 及其对 clang 的依赖关系?
- Wt::D bo 中的循环依赖关系
- 在包含窗口标头时难以解决循环依赖关系问题
- 当依赖关系和依赖关系都是多态时,在哪个继承级别存储依赖关系指针?
- 解决循环依赖关系 c++ 的想法
- C++循环依赖关系,未声明的标识符
- C++ 中的循环依赖关系问题
- 为什么包含需要进一步的依赖关系?
- 使用 cmake 获取外部依赖关系
- CMake 外部和内部静态库的循环依赖关系
- 在没有Xcode的macOS中开发具有依赖关系的应用程序
- "std::shared_ptr"循环依赖关系是如何导致问题的