我执行make -j unix-clang并收到以下错误:
error: *.profraw: No such file or directory
make[1]: *** [unix-clang] Error 1
make: *** [default] Error 2
在Makefile中,unix-clang定义如下:
UNIX的铛:
@/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/llvm-profdata merge -output=crafty.profdata *.profraw
$(MAKE) -j target=UNIX \
CC=clang CXX=clang++ \
opt='-DTEST -DINLINEASM -DPOPCNT -DCPUS=4' \
CFLAGS='-Wall -Wno-array-bounds -pipe -O3 \
-fprofile-instr-use=crafty.profdata' \
CXFLAGS='-Wall -Wno-array-bounds -pipe -O3 \
-fprofile-instr-use=crafty.profdata' \
LDFLAGS='$(LDFLAGS) -fprofile-use -lstdc++' \
crafty-make
有人可以帮忙吗?
我试过谷歌搜索问题,但我发现的一切都是针对Windows的。
感谢
1月13日更新:
$ make profile产生以下内容:
/Applications/Xcode.app/Contents/Developer/usr/bin/make -j unix-clang-profile
/Applications/Xcode.app/Contents/Developer/usr/bin/make -j target=UNIX \
CC=clang CXX=clang++ \
opt='-DTEST -DINLINEASM -DPOPCNT -DCPUS=4' \
CFLAGS='-Wall -Wno-array-bounds -pipe -O3 \
-fprofile-instr-generate' \
CXFLAGS='-Wall -Wno-array-bounds -pipe -O3 \
-fprofile-instr-generate' \
LDFLAGS=' -fprofile-instr-generate -lstdc++ ' \
crafty-make
clang -Wall -Wno-array-bounds -pipe -O3
-fprofile-instr-generate -DTEST -DINLINEASM -DPOPCNT -DCPUS=4 -DUNIX -c crafty.c
clang++ -c -Wall -Wno-array-bounds -pipe -O3
-fprofile-instr-generate -DTEST -DINLINEASM -DPOPCNT -DCPUS=4 -DUNIX egtb.cpp
clang -fprofile-instr-generate -lstdc++ -o crafty crafty.o egtb.o -lm
Illegal instruction
make: *** [profile] Error 132
有什么想法吗?
答案 0 :(得分:1)
使用:
$ make profile
$ ./crafty
看起来像Makefile中的错误。
编辑:
您的CPU或操作系统不支持汇编代码,因此请更改Makefile中的以下行:
unix-clang:
...
opt='-DTEST -DINLINEASM -DPOPCNT -DCPUS=4' \
...
到
unix-clang:
...
opt='-DTEST -DCPUS=4' \
...
并更改
unix-clang-profile:
...
opt='-DTEST -DINLINEASM -DPOPCNT -DCPUS=4' \
...
到
unix-clang-profile:
...
opt='-DTEST -DCPUS=4' \
...
重做。您还应该阅读Makefile的顶部以获取其他信息。