我是Android studio的新手,我想做一个使用我的c++代码的应用程序。我正在使用Cmake导入.cpp文件,在构建项目时,我得到了以下错误:
Build command failed.
Error while executing process F:\Android with arguments {SKD_Components\cmake\3.10.2.4988404\bin\ninja.exe -C A:\...\app\.cxx\cmake\debug\armeabi-v7a native-lib}
ninja: Entering directory `A:\...\app\.cxx\cmake\debug\armeabi-v7a'
[1/2] Building CXX object CMakeFiles/native-lib.dir/A_/Visual_Studio_Projects/.../filename.cpp.o
FAILED: CMakeFiles/native-lib.dir/A_/Visual_Studio_Projects/.../filename.cpp.o
"F:\Android SKD_Components\ndk\20.0.5594570\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe" --target=armv7-none-linux-androideabi21 --gcc-toolchain="F:/Android SKD_Components/ndk/20.0.5594570/toolchains/llvm/prebuilt/windows-x86_64" --sysroot="F:/Android SKD_Components/ndk/20.0.5594570/toolchains/llvm/prebuilt/windows-x86_64/sysroot" -Dnative_lib_EXPORTS -IA:/Visual_Studio_Projects/PasswordGenerator/PasswordGenerator -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -march=armv7-a -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -O0 -fno-limit-debug-info -fPIC -MD -MT CMakeFiles/native-lib.dir/A_/Visual_Studio_Projects/.../filename.cpp.o -MF CMakeFiles\native-lib.dir\A_\Visual_Studio_Projects\...\filename.cpp.o.d -o CMakeFiles/native-lib.dir/A_/Visual_Studio_Projects/.../filename.cpp.o -c A:/Visual_Studio_Projects/PasswordGenerator/PasswordGenerator.cpp
fatal error: UTF-16 (LE) byte order mark detected in 'A:/Visual_Studio_Projects/.../filename.cpp', but encoding is not supported
1 error generated.
ninja: build stopped: subcommand failed.与编码有关,但我不能真正弄清楚是什么。有人有解决方案吗?
发布于 2020-03-08 12:24:29
该错误告诉您filename.cpp源文件以UTF-16LE BOM (字节FF FE)开头,这表明文件的内容已以UTF-16编码。您正在使用的编译器不支持编译采用该编码的源文件。您需要将.cpp文件的编码更改为另一种编码,最好是7/8位编码,例如UTF8或更可能仅使用ASCII码。无论您使用哪个编辑器来创建该文件,请检查它是否具有在保存文件时指定不同编码的选项。否则,您将不得不使用第三方工具对现有文件进行重新编码,例如iconv。
https://stackoverflow.com/questions/60584016
复制相似问题