如何编译"轻量级java-profiler"而不得"C++ 11需要文字和标识符之间的空格"

Jas*_*Jas 1 c++ linux ubuntu c++11

当我尝试编译轻量级java-profiler时,make all我收到此错误:

~/tmp/flamejava/lightweight-java-profiler-read-only$ make all
g++ -I/dev/jdk1.7.0/include -I/dev/jdk1.7.0/include/linux -mfpmath=sse -std=gnu++0x -fdiagnostics-show-option -fno-exceptions -fno-omit-frame-pointer -fno-strict-aliasing -funsigned-char -fno-asynchronous-unwind-tables -m64 -msse2 -g -D__STDC_FORMAT_MACROS -Wframe-larger-than=16384 -Wno-unused-but-set-variable -Wunused-but-set-parameter -Wvla -Wno-conversion-null -Wno-builtin-macro-redefined -Wall -Werror -Wformat-security -Wno-char-subscripts -Wno-sign-compare -Wno-strict-overflow -Wwrite-strings -Wnon-virtual-dtor -Woverloaded-virtual -O2 -Fvisibility=hidden -fPIC -c /tmp/flamejava/lightweight-java-profiler-read-only/src/display.cc -o build-64/display.pic.o
/tmp/flamejava/lightweight-java-profiler-read-only/src/display.cc:23:22: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Werror=literal-suffix]
       fprintf(file_, "%"PRIdPTR" ", traces[i].count);
                      ^
Run Code Online (Sandbox Code Playgroud)

我的系统:

Linux MYMACHINE 3.13.0-49-generic #83-Ubuntu SMP Fri Apr 10 20:11:33 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

我不知道该怎么做,我该如何解决这个问题呢?并设法编译它?谢谢

T.C*_*.C. 5

"%"PRIdPTR被解释为用户定义的文字.之前添加一个空格PRIdPTR.