问题标签 [precompiler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cmake - 在 fortran 中使用 cmake add_definition 值
我想-DMY_FLAG=ONETWOTHREE
在 CMake 调用中包含一个标志,即 ie ,并在 fortran 代码中make .. -DMY_FLAG=ONETWOTHREE
获取 的值。MY_FLAG
我add_definitions("-DMY_FLAG=${MY_FLAG}")
用来传递MY_FLAG
给make
.
目前,当我做类似的事情时
write(*,*) MY_FLAG
我得到这个编译器错误:
Error: Symbol 'ONETWOTHREE' at (1) has no IMPLICIT type
可以将-D
标志转换为 fortran 中的类型吗?它看起来像是MY_FLAG
在编译时以某种方式定义的,但它没有类型。
c# - PlayMode 测试和 Unity Cloud Build
如果我在 Editor 文件夹中包含 Unity PlayMode 测试,它们不会出现在 Unity 中。这是为什么?这对我来说是个问题,因为如果我将这些测试保存在我的 Assets 目录下,Unity Cloud Build 会出现以下错误:
错误 CS0246:找不到类型或命名空间名称“UnityEditor”。您是否缺少程序集参考?
在我的 PlayMode 测试中,我在*.cs
测试文件中引用了统一的编辑器命名空间:using UnityEditor;
*.cs
我通过在所有PlayMode 测试文件周围包装一个预编译器指令找到了一种解决方法:
但这是最好的方法吗?当您必须在 PlayMode 测试中使用 UnityEditor 命名空间时,这里到底发生了什么以及使用 Unity Cloud Build 处理这种情况的最佳方法是什么?
c - 带有 Pro*C 的 Makefile 找不到 .c 文件
我有一个 .pc 文件目录,我正在尝试使用 Makefile 编译为 .o 文件。Oracle Pro*C 将 .pc 文件预编译为 .c。然后 gcc 将 .c 文件编译为 .o。这些是规则:
当我尝试构建.o
文件时会出现问题。该.c
文件已正确生成,但在我第二次运行 make 之前,该$(CC)
行无法找到该文件。.c
当我在没有任何参数的情况下运行 Makefile 来构建整个目录时,我需要为.pc
目录中的每个文件运行两次 make。如何修复 Makefile 使其只需要运行一次?
ruby-on-rails - rake assets:windows 机器上的预编译失败
我有很多次报告的类似问题,例如这里:rake assets:precompile RAILS_ENV=production not working as required
我的设置如下:
c:\RailsApps\asset_pipeline_test>bundle exec rake assets:precompile I, [2018-05-08T01:26:06.195454 #7876] INFO -- : Writing c:/RailsApps/asset_pipeline_test/public/assets/application-a51a53658dfaa975cb4363f51d14bccf24d66c3d90c2186bf834c157151c4bd1.js rake中止!NoMethodError: nil:NilClass 任务的未定义方法`post': TOP => assets:precompile
不同的应用程序会出现相同的错误。
与其他报告问题的区别:
我将应用程序的 1:1 副本和 Ruby/Rails 安装文件夹从工作机器放到失败的机器上。
我检查了任何类型的环境变量,没有发现任何区别。
我猜应用程序之外的机器和 Ruby 设置之间存在差异。
问题:那可能有什么不同?两台机器最初都是由相同的操作系统映像(由我公司的 IT)设置的,但它们当然不是新鲜的
乌里
macros - 如何计算和显示#define 宏 VStudio 的值
我知道如何在 C 中显示扩展宏。但是,我对如何显示宏的计算值感兴趣。
预编译器肯定会计算宏值以执行 #if(a>b) 语句:
编译期间的输出是:
所以,预编译器计算了两个整数,比较它们并输出错误。
我的问题是:如何在编译过程中显示宏计算的实际结果?,即
公式扩展可能相当复杂,因此在编译期间查看结果很有用,无需运行代码:
谢谢,伊戈尔
c++ - 使用文件内容作为硬编码字符串
我正在寻找一种将文件内容用作硬编码字符串常量的简单方法。
当然,我可以将文件内容复制/粘贴到 andefine
中,但这需要我将\
s 放在每行的末尾和每行的前面"
。
我试图constexpr
让预编译器加载文件,但要么我做错了(我不熟悉constexpr
),要么不可能那样做。
这是我尝试过的:
我得到错误:
也许有人可以修改我的代码以按预期工作,或者也许有人有一种全新的方式来实现我的目标。
我知道我可以简单地编写一个脚本来读取文件的内容并将其转换为,#define
但我想在没有额外的预构建步骤的情况下这样做。
编辑: 如何将文件嵌入到可执行文件中?专注于嵌入二进制文件。我只想将文本文件的内容用作硬编码字符串。建议的方法对于我想做的事情来说太重了。
c++ - Make, Endpoints 因预编译器标志而异
使用 make,我需要生成两个版本的可执行文件,它们的不同之处在于预编译器标志的使用DXYZ
。到目前为止,我的工作方式是*.o
为 vanilla 程序生成对象,并*.o_xyz
为使用-DXYZ
标志的对象生成另一组。
所以基本上我有两个规则来产生对象,即:$(OBJ)/%.o: %.cpp
和$(OBJ)/%.o_xyz: %.cpp
。
我想知道这是否是实现这一目标的最佳方法?是否可以将其简化为一条规则?
c - 如何自动化变量输入数组列表
我需要调用一系列需要输入数组中的列表的函数,如下所示:
如何将其打包到一个可以使用特定参数调用的函数中,该函数将提取数字并相应地填充数组?我应该相应地使用预编译器吗?感谢您的任何想法!
c - 如何在 mac 上使用 Oracle 预编译器
卡在这里好几天了,谁能帮忙,不胜感激。主要问题是关于在 mac 上使用 oracle Precompiler。
我是这样一步一步尝试的: 1.作为Oracle官方文档,我下载了三个文件:
2.然后按照这里提到的步骤https://github.com/InstantClientTap/homebrew-instantclient:
我使用 sqlplus 连接到在 docker 中成功运行的 Oracle 服务器。
3.BUT,由于此工具不提供安装预编译器。所以我下载
了 instantclient-precomp-macos.x64-12.2.0.1.0-2.zip 然后解压。
4.我有一个文件夹名称precomp,它有一个文件夹名称admin,在admin中我有两个文件pcbcfg.cfg和pcscfg.cfg,我将precomp文件夹放入/usr/local/lib/中,当我使用proc
command时提到在我的终端中是这样的:
System default option values taken from:/usr/local/lib/precomp/admin/pcscfg.cfg.
5.另外,我有一个文件夹名称sdk,因为我已经通过自制软件安装了sdk,所以我将sdk中的exec文件名proc和procob复制到/usr/local/Cellar/instantclient-sdk/18.1.0.0.0-2/lib/sdk/
6.然后我把所有的.h文件放在include文件夹/usr/local/Cellar/instantclient-sdk/18.1.0.0.0-2/lib/sdk/include
中以防万一,我也将它们复制到.h文件中usr/local/include
。
7.我改变了 pcscfg.cfg 中的行,如下所示:
sys_include=($ORACLE_HOME/sdk/include,/usr/include,/usr/local/include/,/usr/local/Cellar/instantclient-sdk/18.1.0.0.0-2/include,/usr/local/Cellar/instantclient-sdk/18.1.0.0.0-2/lib/sdk/include,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include)
这就是我所做的一切。
所以我只写了一个test.pc:
然后 commond proc test.pc
,不幸的是出现了很多错误:
操作系统是上面的 Mojave 和 Oracle 客户端版本,我猜错误是链接库或有关头文件的东西,但是在我完成之后我不知道要解决这个问题。任何可以提供帮助的人都非常感激。
ps.最后,我放弃理性地解决这个问题。只是出于这个目的,我几乎通过 3 个步骤解决了它
1:找到一个可以毫无问题地预编译 pro*c 文件的良好环境(docker 是一个不错的选择或另一台计算机)。
2pcscfg.cfg
:将包含一堆.h文件
的路径中的所有文件复制到您的计算机。3:轻松将本地 pcscfg.cfg
文件指向复制的.h文件的路径,即可顺利运行proc
command。
visual-c++ - 当通过 squish coco 检测我的代码时,在查找预编译器头文件时出现意外的文件结尾
错误 C1010:查找预编译头时文件意外结束。您是否忘记在源文件中添加#include "stdafx.h"?
我已经在我的 .cpp 文件中添加了#include "stdafx.h" 文件
但是当我当时使用Squish coco进行代码检测时,他们忽略了这个预编译器文件并给了我错误。
我希望它能够成功检测我的代码而不会给出 C1010 错误。
我已经尝试过 Precompiler Disable 选项,但没有成功