Изменить параметры компилятора в Intel PIN
Как я могу изменить параметры g++ при компиляции инструмента Pin? Например, возможно ли предотвратить предупреждение ошибок как ошибок или можно связать инструмент с внешней библиотекой, такой как bfd?
2 ответа
Связывать Pin с предварительно скомпилированными библиотеками не рекомендуется. Pin использует другую библиотеку libc, и связывание может не получиться или вызвать проблемы во время работы. Если вы хотите использовать внешнюю библиотеку, либо скомпилируйте ее со временем выполнения pin, либо используйте ее в отдельном процессе.
Чтобы создать определенные файлы нестандартным способом, добавьте правило в Build rules
раздел соответствующего make-файла.
В общем, это плохая идея, чтобы изменить флаги пина по умолчанию. Все они служат цели.
Так что gcc 7 добавил несколько дополнительных предупреждений, которые сломали мой булавочный инструмент. Поэтому я хотел удалить -Werror
аргумент командной строки. Это не должно влиять на конечный двоичный файл, поэтому он должен быть совершенно безопасным.
Вы можете просто удалить его из списка заданных аргументов с помощью filter-out.
Это все содержание части "правил сборки" моего makefile.rules.
MY_CXX_FLAGS:=$(filter-out -Werror, $(TOOL_CXXFLAGS))
$(OBJDIR)generate_loop_info$(OBJ_SUFFIX): generate_loop_info.cpp
$(CXX) $(MY_CXX_FLAGS) -D OUTPUT_FILE $(COMP_OBJ)$@ $<
$(OBJDIR)generate_loop_info$(PINTOOL_SUFFIX): $(OBJDIR)generate_loop_info$(OBJ_SUFFIX)
$(LINKER) $(TOOL_LDFLAGS) $(LINK_EXE)$@ $< $(TOOL_LPATHS) $(TOOL_LIBS)