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

Reply via email to