2016-07-01 2 views
0

Я установил последнюю версию PIN-кода от here. И я модифицировал созданный файл для отслеживания вызовов gets(), используя копию malloctrace.cpp. Однако при компиляции я получаю сообщение об ошибке:PIN-код неизвестен Ошибка ABI

In file included from ./include/pin/pin.H:41:0, from

tools/ManualExamples/inputtrace.cpp:32:

./include/pin/compiler_version_check2.H:83:3: error: #error "Unknown

target architecture" # error "Unknown target architecture" ^

./include/pin/compiler_version_check2.H:98:2: error: #error "internal

error pin compiler configuration not available " #error "internal

error pin compiler configuration not available " ^

./include/pin/compiler_version_check2.H:102:2: error: #error The C++

ABI of your compiler does not match the ABI of the pin kit. #error

The C++ ABI of your compiler does not match the ABI of the pin kit.

^ ./include/pin/compiler_version_check2.H:122:2: error: #error Kit has

unknown compiler ABI #error Kit has unknown compiler ABI ^In file

included from ./include/pin/level_base.PLH:66:0,

from ./include/pin/pin.H:43,

from tools/ManualExamples/inputtrace.cpp:32:

./include/pin/foundation.PLH:25:28: fatal error: types_marker.TLH: No

such file or directory #include "types_marker.TLH"

^

compilation terminated.

Я убедился, что версия PIN-кода, которую я установил, была последней. Но проблема сохраняется. Может ли кто-нибудь помочь мне в этом отношении?

Обновление: Я использую машину x86-64 Линукс и компилятор GCC версии 4.8.4

+1

Можете ли вы показать нам свои изменения? – fuz

+0

Я не думаю, что проблема кроется в коде. Указанная строка 32 соответствует строке #include «pin.H». В любом случае, [здесь] (http://pastebin.com/E7pT6mnZ) это –

+0

Jayakrishna Menon, какова ваша цель? ('uname -a') Какова ваша целевая ОС и версия процессора и компилятора, это x86/x86_64 или нет, gcc или нет? – osgx

ответ

0

Добавление это как ответ, так как, у меня нет необходимой репутации, чтобы сделать комментарий.

Если вы не сообщите нам точные параметры, которые вы использовали для запуска make, я боюсь, что ясный и прямой ответ на ваш вопрос будет невозможно.

Это может быть полный удар в темноте. Но в последнее время у меня возникла аналогичная проблема, как вы указали выше. Я использую систему x86_64 Linux, и я пытался перекрестно скомпилировать свой PinTool для архитектуры ia-32.

Если у вас нет 32-битные совместно используемые библиотеки в вашей системе, или если вы получаете параметр TARGET в make неправильно, это приведет к

Unknown target architecture 

Для меня выполнив следующую команду, сделал построить успешно. Для построения архитектуры ia32 используйте следующее.

make TARGET=ia32