草庐IT

预编译

全部标签

c++ - 预编译头文件?我们真的需要它们吗

很久以前我曾经使用预编译的头文件:加速编译和b.因为我支持CodeWarrior、MPW、VS、ProjectBuilder、gcc、intel编译器等多种开发工具。现在我有一台配备32gb内存的MacPro。现在我只使用CMake。那么我们真的需要预编译头文件了吗?是否有我看不到/不知道的明显好处?如何制作跨平台的预编译头文件?也许这也会简化我的生活。 最佳答案 没有“足够快”的构建。如果TDD(Test-DrivenDevelopment)的构建时间超过几秒钟,他们会感到不安,因为这会使他们的开发风格的周转速度慢得多。我参与的项

c++ - 查找预编译头文件时跳过

所以出于某种原因,我的.cpp文件缺少它的头文件。但我没有在其他任何地方包含头文件。我刚开始,所以我检查了我制作的所有文件enginuity.h#ifndef_ENGINE_#define_ENGINE_classEnginuity{public:voidInitWindow();};enginuity.cpp#include"Enginuity.h"voidEnginuity::InitWindow(){}main.cpp#include"stdafx.h"#include"GameProject1.h"#defineMAX_LOADSTRING100//GlobalVariable

c++ - GCC 构建时间并没有从预编译的头文件中获得太多好处

我有一个庞大的项目,大约150000LOC的C++代码。构建时间大约是15分钟。本项目由多个不同规模的子项目组成。我为每个子项目构建了单独的预编译头文件,但是当我使用它们时,构建时间大致保持不变。构建时间似乎减少了5-10%,而不是更多。肯定会使用预编译头文件,我使用-Winvalid-pch选项并且我尝试使用-H编译器选项进行编译,我的预编译头文件出现在输出中并带有'bang'符号,表示编译器可以使用预编译头文件。我所有的预编译头文件都不是很大,每个文件大约50Mb。我用python脚本,找到here生成最常用的预编译头列表,所以我的预编译候选列表非常好。是否有任何免费/开源工具可用

c++ - Visual C++ 预编译头错误

更新:在我的头文件中包含stdafx.h有什么影响?我在Linux/EclipseCDT中开始了一个C++项目,并将其导入VisualC++/Windows。在VisualC++中,我开始使用预编译头文件来加快编译速度,并定义了stdafx.cpp和stdafx.h。这是我的stdafx.h#pragmaonce#include#include#include...还有我的stdafx.cpp#include"stdafx.h"在每个.h和.cpp文件中,我都有以下内容:#pragmaonce//ifinaheaderfile#include"stdafx.h"对于发布和调试,我都有“

javascript - Ember.js 如何引用 Grunt.js 预编译的 Handlebars 模板?

我一直在探索Ember.js和Grunt.js,但我不明白Ember.js是如何找到和使用预编译的Handlebars模板的。现在我的Gruntfile.js看起来像这样:module.exports=function(grunt){//Projectconfiguration.grunt.initConfig({pkg:grunt.file.readJSON('package.json'),handlebars:{compile:{files:{"js/templates.js":"templates/*.hbs",}}}});//Loadthepluginthathandlesth

node.js - 如何将预编译的二进制文件与 Electron 捆绑在一起

我正在尝试在Electron应用程序中包含一个预编译的二进制文件。我从Electron快速启动应用程序开始,并修改了我的renderer.js文件以包含此代码,该代码在文件被拖放到正文时触发:spawn=require('child_process').spawn,ffmpeg=spawn('node_modules/.bin/ffmpeg',['-i',clips[0],'-an','-q:v','1','-vcodec','libx264','-y','-pix_fmt','yuv420p','-vf','setsar=1,scale=trunc(iw/2)*2:trunc(ih/

node.js - V8 是否有任何预编译的二进制文件?

V8是node.js的重要组成部分,它使用GoogleV8Javascript引擎。在我的windowsbox[Windows7/64-bit]上构建V8将花费我数小时的时间来获取和安装我不熟悉的工具(尽管我确实使用Cygwin)。如果那里有一些二进制安装程序,它会为我省去很多麻烦。谷歌搜索没有返回任何明显的位置——这里的大师知道吗?即使您对我的确切环境一无所知,在这里分享其他人也会对同舟共济的人有所帮助... 最佳答案 node.js中没有V8二进制文件。相反,V8被绑定(bind)到node.js二进制文件中。就像其他人一样在C

node.js - 将预编译的二进制文件捆绑到 Electron 应用程序中

关于如何将第三方预编译的二进制文件(如imagemagick)包含到Electron应用程序中,有没有好的解决方案?有node.js模块,但它们都是package器或native绑定(bind)到系统范围内安装的库。我想知道是否可以在发行版中捆绑预编译的二进制文件。 最佳答案 请参阅下面的更新(这种方法现在并不理想)。我确实找到了解决方案,但我不知道这是否被认为是最佳实践。我找不到任何包含3rd方预编译二进制文件的好文档,所以我只是摆弄它,直到它最终与我的ffmpeg二进制文件一起工作。这是我所做的(从Electron快速入门,no

node.js - 如何为 handlebars.js 预编译部分?

我正在使用handlebars.js,我想开始预编译所有内容,但我似乎找不到预编译部分的方法。我的大部分模板实际上都是部分模板。我尝试将它们视为常规模板,但随后将它们称为部分模板是行不通的。有没有办法预编译部分,或者,从另一个模板中调用一个模板? 最佳答案 我找到了一个更好的方法:将所有部分预编译为模板,然后在代码中使用它们之前,添加以下行:Handlebars.partials=Handlebars.templates;改进之处在于1)它更短2)它不会丢失您在调用父模板时可能传入的任何自定义帮助器。

ruby-on-rails - 在 Docker 中使用 nginx 服务 Rails 的预编译 Assets

目前我正在使用docker设置我的应用程序。我有一个最小的rails应用程序,带有1个Controller。你可以通过运行这些来获得我的设置:railsnewapp--database=sqlite--skip-bundlecdapprailsgeneratecontroller--skip-routesHomeindexecho"Rails.application.routes.draw{root'home#index'}">config/routes.rbecho"gem'foreman'">>Gemfileecho"web:railsserver-b0.0.0.0">Procfi