构建cpp应用程序
Build cpp application
我有一个文件列表(cpp、h,以及里面带有cpp/h的子文件夹)。
我不知道如何正确构建它,因为它没有任何类似的makefile或smth(纯c++文件)。所以我决定"抓住"正确的gcc
参数来构建它
g++ *.cpp `wx-config --libs` `wx-config --cxxflags` -lGL -lglut -lfkr-skeletal2d
现在我有了那条线。以下是文件列表:
$ ls -p
AnimationEditor/ Core-Code/ GLRender.cpp GLSprite.cpp Icons/ LGPLv3.txt MainWindow.h PlayBar.h PopUp.h TimeLine.h
BoneEditor/ daten/ GLRender.h GLSprite.h LGPLv3_de.txt MainWindow.cpp PlayBar.cpp PopUp.cpp TimeLine.cpp wxWidgets_Addons/
目录Core-Code
:中有文件
AnimationManager.cpp AnimationManager.h SkeletalManager.cpp SkeletalManager.h TextureManager.cpp TextureManager.h
当我使用gcc行时,我会得到很多链接器错误:
undefined reference to `CSkeletalManager::***
undefined reference to `CAnimationManager::***
也许,我必须以某种方式指定Core-Code
中的文件。我不能理解这个问题。
最好的方法是付出一点努力,实际创建一组Makefile;一个顶级文件和子目录的子Makefiles。但是,如果您只想使用创建命令行的相同方法,请先将"*.cpp"替换为find . -name '*.cpp'
,使其包含所有*.cpp
文件。我认为在那之后,您将在查找*.hpp
文件时遇到问题,因此需要添加一些-I
选项来告诉g++
在哪里查找标头。
所以类似的东西
g++ `find . -name '*.cpp'` -IAnimationEditor -IBoneEdiror -ICore-Code `wx-config --libs` `wx-config --cxxflags` -lGL -lglut -lfkr-skeletal2d
我还会在命令行中添加:Core-Code/*.cpp
。
相关文章:
- 像 CPP 中的控制台一样的应用程序
- 如何将SQLite c文件(合并)与cpp应用程序链接?
- 如果我在库中和应用程序中编译了相同的CPP文件,会发生什么
- 如何在.htm文件上运行.cpp应用程序
- 从基本C/CPP Linux应用程序中展示状态信息
- 编译 CPP 应用程序时出错。 "error: 'posix_memalign' was not declared in this scope"
- 生成代码以与不需要重新编译的正在运行的 cpp 应用程序交互的好方法是什么?
- 在CPP应用程序中保存密码
- 如何在运行 cpp 应用程序的 GUI 时通过 GDB 设置中断
- 使用Binder从本机cpp应用程序绑定Intent内部
- 在Qt应用程序中编译多个.cpp文件
- <QNetworkAccessManager><QNetworkReply> 在 BB10 应用程序开发的 cpp 文件中包含 时出错
- 使用现有的cpp核心代码构建Web应用程序
- 在.NET应用程序中包括NOT.NET cpp和h
- 如何将perl+cpp转换为独立的应用程序
- 在C#应用程序中运行CPP文件
- 将CPP应用程序移植到Android
- 在可视化cpp控制台应用程序中使用std::cout出错
- 初始化两个不同应用程序的cpp文件共享的headerfile中的数组结构
- 在 Eclipse a Cocos2dx 应用程序 (Cpp) 中调试