Firefly开源社区

标题: Android系统编译--Could not initialize NSS [打印本页]

作者: kyle2020    时间: 2020-4-23 14:38
标题: Android系统编译--Could not initialize NSS
环境:Ubuntu 12.04.5 LTS
Android编译log:
Exception in thread "main" java.security.ProviderException: Could not initialize NSS
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:223)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:103)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:224)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206)
        at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187)
        at sun.security.jca.ProviderList.loadAll(ProviderList.java:282)
        at sun.security.jca.ProviderList.removeInvalid(ProviderList.java:299)
        at sun.security.jca.Providers.getFullProviderList(Providers.java:173)
        at java.security.Security.insertProviderAt(Security.java:360)
        at java.security.Security.addProvider(Security.java:407)
        at com.android.dumpkey.DumpPublicKey.main(DumpPublicKey.java:236)
Caused by: java.io.IOException: NSS initialization failed
        at sun.security.pkcs11.Secmod.initialize(Secmod.java:223)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:218)
        ... 16 more
target thumb C++: libartd <= art/runtime/native/java_lang_System.cc
make: *** [out/target/product/rk312x/obj/PACKAGING/ota_keys_intermediates/keys] 错误 1
make: *** 正在删除文件“out/target/product/rk312x/obj/PACKAGING/ota_keys_intermediates/keys”
make: *** 正在等待未完成的任务....



作者: jpchen    时间: 2020-4-23 15:39
请参考如下wiki
http://wiki.t-firefly.com/zh_CN/ ... droid_firmware.html
作者: kyle2020    时间: 2020-4-23 16:05
jpchen 发表于 2020-4-23 15:39
请参考如下wiki
http://wiki.t-firefly.com/zh_CN/Firefly-RK3128/compile_Android_firmware.html

就是按照wiki一步一步做的
作者: jpchen    时间: 2020-4-23 16:11
kyle2020 发表于 2020-4-23 16:05
就是按照wiki一步一步做的

如下是否成功安装
sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
g++-multilib mingw32 tofrodos gcc-multilib ia32-libs \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
lzop libssl1.0.0 libssl-dev
作者: kyle2020    时间: 2020-4-23 16:49
jpchen 发表于 2020-4-23 16:11
如下是否成功安装
sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc ...

$ sudo apt-get install git gnupg flex bison gperf build-essential \
> zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
> libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
> g++-multilib mingw32 tofrodos gcc-multilib ia32-libs \
> python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
> lzop libssl1.0.0 libssl-dev
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
正在读取状态信息... 完成      
bison 已经是最新的版本了。
flex 已经是最新的版本了。
g++-multilib 已经是最新的版本了。
gcc-multilib 已经是最新的版本了。
gperf 已经是最新的版本了。
tofrodos 已经是最新的版本了。
zip 已经是最新的版本了。
lzop 已经是最新的版本了。
mingw32 已经是最新的版本了。
python-markdown 已经是最新的版本了。
libncurses5-dev:i386 已经是最新的版本了。
libreadline6-dev:i386 已经是最新的版本了。
zlib1g-dev:i386 已经是最新的版本了。
build-essential 已经是最新的版本了。
curl 已经是最新的版本了。
git 已经是最新的版本了。
gnupg 已经是最新的版本了。
libxml2-utils 已经是最新的版本了。
x11proto-core-dev 已经是最新的版本了。
xsltproc 已经是最新的版本了。
ia32-libs 已经是最新的版本了。
libgl1-mesa-glx:i386 已经是最新的版本了。
libx11-dev:i386 已经是最新的版本了。
libssl1.0.0 已经是最新的版本了。
libc6-dev 已经是最新的版本了。
libssl-dev 已经是最新的版本了。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 215 个软件包未被升级。
作者: jpchen    时间: 2020-4-23 16:57
kyle2020 发表于 2020-4-23 16:49
$ sudo apt-get install git gnupg flex bison gperf build-essential \
> zip curl libc6-dev libncurs ...

查看一下jdk版本
javac -version
作者: kyle2020    时间: 2020-4-23 17:07
$ java -version
java version "1.7.0_121"
OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-2.6.8-1ubuntu0.12.04.3)
OpenJDK 64-Bit Server VM (build 24.121-b00, mixed mode)
$ javac -version
javac 1.7.0_121

作者: jpchen    时间: 2020-4-23 17:48
kyle2020 发表于 2020-4-23 17:07
$ java -version
java version "1.7.0_121"
OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-2.6.8- ...

设置 export LC_ALL=C 然后再make clean后重新编译。
看你编译有中文,建议默认语言为英文。
作者: kyle2020    时间: 2020-4-23 18:10
jpchen 发表于 2020-4-23 17:48
设置 export LC_ALL=C 然后再make clean后重新编译。
看你编译有中文,建议默认语言为英文。

target Static Jar: littlemock (out/target/common/obj/JAVA_LIBRARIES/littlemock_intermediates/javalib.jar)
target Static Jar: android-support-multidex (out/target/common/obj/JAVA_LIBRARIES/android-support-multidex_intermediates/javalib.jar)
e9abf31bacf5435c909a3f1ba3b9803b19e296f49c2a980da1b5725dff2a0627aa893ae0a0d06f4d0bfa03537b54a0cd0e58dc745758c3bf51b4e96c6760b6a5
Exception in thread "main" target Java: sqlite-jdbc (out/target/common/obj/JAVA_LIBRARIES/sqlite-jdbc_intermediates/classes)
java.security.ProviderException: Could not initialize NSS
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:223)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:103)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:224)
        at sun.security.jca.ProviderConfig$2.run(ProviderConfig.java:206)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:206)
        at sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:187)
        at sun.security.jca.ProviderList.loadAll(ProviderList.java:282)
        at sun.security.jca.ProviderList.removeInvalid(ProviderList.java:299)
        at sun.security.jca.Providers.getFullProviderList(Providers.java:173)
        at java.security.Security.insertProviderAt(Security.java:360)
        at java.security.Security.addProvider(Security.java:407)
        at com.android.dumpkey.DumpPublicKey.main(DumpPublicKey.java:236)
Caused by: java.io.IOException: NSS initialization failed
        at sun.security.pkcs11.Secmod.initialize(Secmod.java:223)
        at sun.security.pkcs11.SunPKCS11.<init>(SunPKCS11.java:218)
        ... 16 more
target Java: nist-pkix-tests (out/target/common/obj/JAVA_LIBRARIES/nist-pkix-tests_intermediates/classes)
make: *** [out/target/product/rk312x/obj/PACKAGING/ota_keys_intermediates/keys] Error 1
make: *** Deleting file `out/target/product/rk312x/obj/PACKAGING/ota_keys_intermediates/keys'
make: *** Waiting for unfinished jobs....
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.



作者: jpchen    时间: 2020-4-24 08:18
kyle2020 发表于 2020-4-23 18:10
target Static Jar: littlemock (out/target/common/obj/JAVA_LIBRARIES/littlemock_intermediates/javal ...

请按如下帖子尝试修改
https://blog.csdn.net/a4262562/article/details/52799037
作者: kyle2020    时间: 2020-4-24 14:46
jpchen 发表于 2020-4-24 08:18
请按如下帖子尝试修改
https://blog.csdn.net/a4262562/article/details/52799037

这个帖子之前已经尝试过了,依旧未能解决问题。
今天重装ubuntu14.04,系统编译成功。
感谢大佬的指导




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1