正在编译具有依赖项的PIN工具
Compiling PIN tool with dependencies
正如标题所述,我正在寻找一种方法,使编译我的PIN工具具有一些依赖关系。例如,如果我在我的PIN工具中#include "somefile.h"
,并生成一些对象文件g++ -c somefile.cpp
,我如何链接我的对象文件以使用我的PIN文件进行编译,以便在我的PIN工具中使用它的功能?
所以我能够在这里找到一些关于更改PIN网站下的"makefile.rules"的文档。对于我的情况,下面这6行将被添加到"makefile.rules"的末尾
$(OBJDIR)"somefile"$(OBJ_SUFFIX): "somefile".cpp "somefile".h
$(CXX) $(TOOL_CXXFLAGS) $(COMP_OBJ)$@ $<
$(OBJDIR)"PinFile"$(OBJ_SUFFIX): "pin_tool".cpp
$(CXX) $(TOOL_CXXFLAGS) $(COMP_OBJ)$@ $<
$(OBJDIR)"pin_tool"$(PINTOOL_SUFFIX): $(OBJDIR)"somefile"$(OBJ_SUFFIX) $(OBJDIR)"PinFile"$(OBJ_SUFFIX) "somefile".h
$(LINKER) $(TOOL_LDFLAGS_NOOPT) $(LINK_EXE)$@ $(^:%.h=) $(TOOL_LPATHS) $(TOOL_LIBS)
从一个make文件到另一个make文档,唯一会改变的就是我在引号中的单词。请注意,在实际的"makefile.rules"中,被引用的单词周围不应该有引号
在"makefile.rules"的末尾需要一个新规则:
$(OBJDIR)YourPinToolMainFile$(PINTOOL_SUFFIX): $(OBJDIR)YourPinToolMainFile$(OBJ_SUFFIX) $(OBJDIR)somefile$(OBJ_SUFFIX)
$(LINKER) $(TOOL_LDFLAGS) $(LINK_EXE)$@ $^ $(TOOL_LPATHS) $(TOOL_LIBS)
相关文章:
- 使用外部SDK工具链文件在VisualStudio上生成项目编译错误
- 在clang++预处理器中确定gcc工具链版本
- Visual Studio(或任何其他工具)能否将地址解释为调用堆栈(boost上下文)的开头
- 参数化自定义CMake工具链
- 如何在QT中的自定义视频小工具t上绘制矩形
- 使用 C++ 和 i2c 工具从虚拟 i2c 写入和读取
- 使用英特尔 PIN 修改寄存器
- 用于C++的静态二进制检测或二进制重写工具和框架
- 在OSX上使用CMake将Adobe的XMP工具包构建为共享库的最简单方法是什么?
- 如何使用英特尔 PIN 捕获阵列的所有负载?
- AWS IoT 开发工具包:通过 TCP 端口 443 使用 MQTT
- 在官方张量流 resnet50 模型上运行 tflite 精度工具
- Q没有管理权限的 exe 无法启动维护工具
- C++合并排序可视化工具
- 为Bazel工具链指定sysroot
- 正在编译具有依赖项的PIN工具
- 英特尔 PIN:英特尔 PIN 工具的初始设置
- 如何在非JIT模式下使用Pin工具
- PIN工具是否可以插入一个bash脚本,其中包含运行其他命令的代码
- 用于跟踪CreateFile调用的Pin工具