我正在构建使用此tutorial的ios工具链。当我运行命令make ENABLE_OPTIMIZED = 1时,我得到这个输出。'strcmp'未在此范围内声明
llvm[0]: Reconfiguring with /home/connor/llvm-svn/configure
config.status: creating Makefile.config
config.status: creating llvm.spec
config.status: creating docs/doxygen.cfg
config.status: creating tools/llvm-config/llvm-config.in
config.status: creating include/llvm/Config/config.h
config.status: creating include/llvm/Support/DataTypes.h
config.status: include/llvm/Support/DataTypes.h is unchanged
config.status: creating include/llvm/ADT/hash_map
config.status: include/llvm/ADT/hash_map is unchanged
config.status: creating include/llvm/ADT/hash_set
config.status: include/llvm/ADT/hash_set is unchanged
config.status: creating include/llvm/ADT/iterator
config.status: include/llvm/ADT/iterator is unchanged
config.status: executing setup commands
config.status: executing Makefile commands
config.status: executing Makefile.common commands
config.status: executing examples/Makefile commands
config.status: executing lib/Makefile commands
config.status: executing runtime/Makefile commands
config.status: executing test/Makefile commands
config.status: executing test/Makefile.tests commands
config.status: executing tools/Makefile commands
config.status: executing utils/Makefile commands
config.status: executing projects/Makefile commands
config.status: executing bindings/Makefile commands
config.status: executing bindings/ocaml/Makefile.ocaml commands
make[1]: Entering directory `/home/connor/llvm-svn/lib/System'
llvm[1]: Compiling Alarm.cpp for Release build
llvm[1]: Compiling Disassembler.cpp for Release build
Disassembler.cpp: In function ‘std::string llvm::sys::disassembleBuffer(uint8_t*, size_t, uint64_t)’:
Disassembler.cpp:44:12: warning: variable ‘bits’ set but not used [-Wunused-but-set-variable]
llvm[1]: Compiling DynamicLibrary.cpp for Release build
DynamicLibrary.cpp: In static member function ‘static void* llvm::sys::DynamicLibrary::SearchForAddressOfSymbol(const char*)’:
DynamicLibrary.cpp:178:5: error: ‘strcmp’ was not declared in this scope
DynamicLibrary.cpp:178:5: error: ‘stderr’ was not declared in this scope
DynamicLibrary.cpp:179:5: error: ‘strcmp’ was not declared in this scope
DynamicLibrary.cpp:179:5: error: ‘stdout’ was not declared in this scope
DynamicLibrary.cpp:180:5: error: ‘strcmp’ was not declared in this scope
DynamicLibrary.cpp:180:5: error: ‘stdin’ was not declared in this scope
make[1]: *** [/home/connor/llvm-svn/lib/System/Release/DynamicLibrary.o] Error 1
make[1]: Leaving directory `/home/connor/llvm-svn/lib/System'
make: *** [all] Error 1
我不知道该怎么做,我的谷歌搜索没有太大的帮助。
在'string.h'中声明'strcmp'试图在'DynamicLibrary.cpp'中放入'#include',并且在'stdio.h'中标记stderr,所以也是这样。 –
jcubic
2012-02-22 22:19:54
@jcubic将您的评论发布为答案。 – 0xDE4E15B 2012-02-22 22:29:14
不明白这一个。也许尝试再次运行'./configure'。 – jcubic 2012-02-22 22:43:24