草庐IT

Makefile

全部标签

c++ - 制作 : No rule to make a header file?

我正在尝试使用名为BigInt的库创建一个项目。我的文件结构是:/Users/wen/Projects/challenge/fibonacci3/fibonacci3.cpp/Users/wen/Projects/challenge/fibonacci3/Makefile/Users/wen/Projects/include/bigint//Users/wen/Projects/include/bigint/MakefileFibonacci3Makefile截至LD_FLAGS=CC_FLAGS=#Includelibrariesinclude/Users/wen/Projects/

c++ - 无法使用 C++ stdlib 系统调用运行 make

我在C++中得到了以下代码if(should_run_make){std::stringmake="make-C";make.append(outdir);std::cout报告如下:Makecmdismake-C/home/hamiltont/temp/make:Enteringdirectory/home/hamiltont/temp'make:***Notargets.Stop.make:Leavingdirectory/home/hamiltont/temp'但是,以多种方式手动执行此操作效果很好,例如[hamiltont@4generator]$make-C/home/ham

c++ - 如何将一个 makefile 包含到另一个 makefile 中?

我有一些C++类,每个类都放在自己的文件夹中,带有makefile、用于测试目的的test.cpp等。Mainfolder|->Class1folder|->Class2folder|->Class2.1folder|->Class2folder我有一个主项目,必须包含这些类。我正在尝试将所有子makefile包含到主makefile中。我尝试过使用“INCLUDEPOO/makefile”,但这个解决方案有两个问题:子生成文件的路径不正确,因此找不到文件(“没有构建目标‘Vector3D.cpp’的规则”)。“test.cpp”文件被覆盖,可能是因为路径问题。(“警告:覆盖目标的配方

c++ - Automake 不在子目录中生成 Makefile.in

首先我只想说,我是Autotools的新手。我有一个具有以下结构的项目:+-src+-commandsMakefile.am+-copyMakefile.amcopy.hcopy.cpp+-deleteMakefile.amdelete.hdelete.cppmain.cppMakefile.amMakefile.amMakefile.am有SUBDIRS=srcsrc/Makefile.am有SUBDIRS=commands。src/commands/Makefile.am有SUBDIRS=$(AUTODIRS)当我在根目录下运行automake时,它​​会生成Makefile.in

c++ - c/c++ 相对包含路径与 Makefile 包含标志

在一个文件以目录树结构结构的大型项目中,在源文件中包含相对路径更好,还是只包含头文件并通过Makefile指示编译器在哪里找到它更好?有首选方法吗?示例:#include"../path/to/file.h"对比#include"file.h"gcc-I../path/to我相信第一种情况可能更具可读性,而第二种方法可以无缝移动文件... 最佳答案 第二种方法效率更高,因为您不必每次要使用此文件时都重写路径。让我们举个例子。您想构建一个包含一些有用函数的库。然后你在一个项目上工作,你需要图书馆的一些功能,而不是全部。因此,您选择将这

c++ - 将库 (.lib) 链接到 Visual Studio 2013 项目

我按照link的说明构建了库.为了将该库链接到VisualStudio,我使用了以下方法,但它们都不能链接到我构建的.lib文件。Windows系统变量添加动态库路径(Environmentvariables->Path)设置为;C:\Users\venushka\Desktop\libxbee3-win32\libVisualStudio(包含头文件和源文件C++)配置属性->C/C++->常规->附加包含目录设置为C:\Users\venushka\Desktop\libxbee3-win32链接库配置属性->链接器->常规->附加库目录设置为C:\Users\venushka\D

c++ - 如何使用 CDT 配置 Eclipse?

我一直在尝试在带有cygwin的WindowsXP下将CDT与Eclipse3.4一起使用。为了开始,我需要做什么?我使用了Eclipse主页上的“eclipse-cpp-ganymede-SR1-win32.zip”。编辑:主要问题是,我无法编译和运行代码。在运行配置中,我为C/C++应用程序尝试了gcc.exe:将make.exe的路径添加到我的$Path后,从头开始,它完美运行。 最佳答案 终于找到了。谢谢大家。下载并解压“eclipse-cpp-ganymede-SR1-win32.zip”后,您需要安装Cygwin或Min

c++ - Windows Visual Studio 2008 中的 Unix 生成文件

我进行了不错的搜索,但似乎无法找到让VisualStudio2008使用unixMakefile的方法,甚至无法从Makefile创建一些与MSVC兼容的等效文件。有没有人有想法或类似的问题?注意:我已经知道使用或不使用Makefile的好处/缺点,我不想听你的意见。我现在感兴趣的是从一些最初只有一个Makefile的unix代码创建一个Windows库,并从中获得一些功能。TIA。 最佳答案 您还可以使用cccl与makeforwindows.ccclisawrapperaroundMicrosoftVisualC++'scl.e

c++ - 使用 CMake 制作跨平台库?

CMake难用吗?我一直在使用Windows和MSVC++开发一个库。我在Linux和OSX中测试了我的代码,方法是从每个文件中繁琐地创建对象并从中创建一个库。我有几个目录例如:Agui->Widgets->Button->ListBox->Backends->Allegro我想要的是,例如,如果我在Windows上,它会自动生成一个msvc项目,其中包含所有这些目录和文件,并准备好进行编译。在Linux和OSX上我希望能够做类似的事情制作制作使用CMake可以做到这一点吗?考虑到我的情况,这很容易做到。谢谢 最佳答案 是的,这正是

c++ - ld : duplicate symbol

我有rand.cpp和rand.hpp文件,并且有rand_unif()函数。我在sim_engine.hpp文件中包含了rand.hpp文件。在main.cpp文件中,我包含了sim_engine.hpp文件。如果我运行makefile然后我得到这个错误ld:duplicatesymbolrand_unif()insim_engine.oandmain.oforarchitecturex86_64collect2:ldreturned1exitstatussim_engine.hpp是唯一包含rand.hpp的地方。main.cpp不包含rand.hpp但包含sim_engine.h