I am a non-programmer trying to obtain the NSS certutil tool in order to facilitate the automated import of internal root CA certificates into the NSS certificate store on Windows computers that have Firefox installed. Since it does not appear that Mozilla offers Windows binaries of NSS tools, I am attempting to build NSS from source code. Unfortunately, I am experiencing errors during the build process:
---------------- Creating library nspr4.lib and object nspr4.exp pratom.obj : error LNK2019: unresolved external symbol _InterlockedExchange referenced in function _PR_AtomicSet nspr4.dll : fatal error LNK1120: 1 unresolved externals make[4]: *** [nspr4.dll] Error 96 make[4]: Leaving directory `/c/build/mozilla-source/nspr/WIN954.0_OPT.OBJ/pr/src' make[3]: *** [export] Error 2 make[3]: Leaving directory `/c/build/mozilla-source/nspr/WIN954.0_OPT.OBJ/pr/src' make[2]: *** [export] Error 2 make[2]: Leaving directory `/c/build/mozilla-source/nspr/WIN954.0_OPT.OBJ/pr' make[1]: *** [export] Error 2 make[1]: Leaving directory `/c/build/mozilla-source/nspr/WIN954.0_OPT.OBJ' make: *** [build_nspr] Error 2 ---------------- I do not know how to proceed. I am a non-programmer. I have almost no experience with building anything from source code and have next to no idea how to troubleshoot issues that occur during the compilation process. My only experience with programming and source compilation is with very simple Java programs in a classroom setting developed using NetBeans nearly 10 years ago. I am trying to build NSS 3.25 on my Windows 10 1511 Enterprise x64 computer. I've obtained the NSS 3.25 + NSPR 4.12 collection of source code from the following URL: https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_25_RTM/src/nss-3.25-with-nspr-4.12.tar.gz. I made no changes to the source whatsoever. I followed Mozilla's "Windows build prerequisites" page (https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions/Windows_Prerequisites) in order to set up my system. Microsoft Visual Studio Community 2015 is installed, along with the mentioned "Common Tools for Visual C++ 2015". I installed the latest release of the MozillaBuild package. I do not have Cygwin installed. I did NOT install the MozillaBuild package to the default location. Instead of C:\mozilla-build, I installed it to C:\build\mozilla-build. I opened the build environment as described in the article. Using an (elevated) cmd.exe prompt, I launched "start-shell-msvc2015.bat". I created a source directory "mozilla-source" at C:\build\ with the command "cd c:/build/; mkdir mozilla-source; cd mozilla-source". I then followed Mozilla's "Building NSS" documentation (https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Building). I wasn't quite sure about how to set the variables in the "Configuring the Environment" section, and I searched for answers. I came across a Mozilla document "Build instructions" (https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Reference/Building_and_installing_NSS/Build_instructions), that seemed to show the way to do this. I couldn't get the gmake commands to work. I got "bash: gmake: command not found" when I tried and, besides, I don't know what to do with the references to "target1" and "target2". I just used the commands "BUILD_OPT=1; export BUILD_OPT" and "OS_TARGET=WIN95; export OS_TARGET". After this, I ran "cd nss" and then "make nss_build_all". It runs for a couple minutes before I'm presented with the errors mentioned above. If I look in C:\build\mozilla-source, I now see a "dist" directory that contains "WIN954.0_OPT.OBJ". If I look inside that directory, I see a folder hierarchy that contains either .cfg or .h files. As a Windows user/administrator, I have no idea what those files are for. Can anyone help me understand why NSS 3.25 won't build and some things I can try to get it to compile properly? _______________________________________________ dev-builds mailing list dev-builds@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-builds