Hi Wan-Teh Thanks for replying and appreciate your help.
Modifying the file as you suggested did get us further than before. However, stumbled into another issue during building process (gmake build_nss_all): CC -o SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o -c -xO4 -KPIC -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS -D_REENTRANT -xarch=v9 -DXP_UNIX -UDEBUG -DNDEBUG -DN SS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -Igtest/include/ -Igtest -I../../../dist/SunOS5.11_64_OPT. OBJ/include -I../../../dist/public/gtest -I../../../dist/private/gtest -std=c++0x gtest/src/gtest-all.cc CC: Warning: -xarch=v9 is deprecated, use -m64 -xarch=sparc instead "gtest/src/gtest.cc", line 4108: Warning: Likely null pointer dereference (*(((int *)0))): testing::TestPartResult::~TestPartResult rm -f SunOS5.11_64_OPT.OBJ/libgtest.a ar cr SunOS5.11_64_OPT.OBJ/libgtest.a SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o echo SunOS5.11_64_OPT.OBJ/libgtest.a SunOS5.11_64_OPT.OBJ/libgtest.a rm -f SunOS5.11_64_OPT.OBJ/libgtest1.so CC -xarch=v9 -G -h libgtest1.so -z combreloc -z defs -z ignore -o SunOS5.11_64_OPT.OBJ/libgtest1.so SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o ../../../dist/Su nOS5.11_64_OPT.OBJ/lib/libsectool.a -L../../../dist/SunOS5.11_64_OPT.OBJ/lib -L../../../dist/SunOS5.11_64_OPT.OBJ/lib -lnssutil3 -L../../../dist/SunOS5.11_64_OPT .OBJ/lib -lplc4 -lplds4 -lnspr4 -lssl3 -lsmime3 -lnss3 -lthread -lnsl -lsocket -lposix4 -ldl -lc CC: Warning: -xarch=v9 is deprecated, use -m64 -xarch=sparc instead Undefined first referenced symbol in file std::string::basic_string(const std::string &) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::overflow(int) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::_M_mutate(unsigned long, unsigned long, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios_base::ios_base() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios_base::~ios_base() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o operator new[](unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o operator new(unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream::write(const char*, long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::_M_sync(char*, unsigned long, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ctype<char>::_M_widen_init()const SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__throw_out_of_range_fmt(const char*, ...) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::append(const char*, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::append(const std::string &) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_allocate_exception SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::insert(unsigned long, const char*, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::find(const char*, unsigned long, unsigned long)const SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o vtable for __cxxabiv1::__si_class_type_info SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member vtable for __cxxabiv1::__si_class_type_info must be defined in the program] std::string::swap(std::string &) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream::put(char) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::runtime_error::what()const SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__throw_length_error(const char*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_guard_release SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__detail::_List_node_base::_M_transfer(std::__detail::_List_node_base*, std::__detail::_List_node_base*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream::operator<<(int) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::find(char, unsigned long)const SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __atomic_fetch_add_8 SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__throw_logic_error(const char*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_end_catch SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::append(unsigned long, char) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_begin_catch SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::basic_string(const std::string &, unsigned long, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::seekpos(std::fpos<__mbstate_t>, std::_Ios_Openmode) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_get_exception_ptr SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__throw_bad_cast() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::_Rb_tree_increment(std::_Rb_tree_node_base*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::underflow() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o operator delete[](void*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o operator delete(void*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_throw SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::basic_string(const char*, const std::allocator<char>&) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o typeinfo for std::exception SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member typeinfo for std::exception must be defined in the program] __SUNW_ABIG3_cpp_personality SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::runtime_error::~runtime_error() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::_Rep::_S_empty_rep_storage SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member std::string::_Rep::_S_empty_rep_storage must be defined in the program] std::string::compare(const char*)const SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::basic_string(const char*, unsigned long, const std::allocator<char>&) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::__throw_bad_alloc() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::streambuf::xsgetn(char*, long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o _Unwind_Resume SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxxabiv1::register_exit_code(void (*)(void)extern"C") SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::terminate() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream::flush() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream & std::ostream::_M_insert<long long>(long long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream & std::ostream::_M_insert<double>(double) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream & std::ostream::_M_insert<unsigned long>(unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::_Rb_tree_increment(const std::_Rb_tree_node_base*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o vtable for __cxxabiv1::__vmi_class_type_info SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member vtable for __cxxabiv1::__vmi_class_type_info must be defined in the program] std::string::reserve(unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::cerr SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member std::cerr must be defined in the program] std::streambuf::xsputn(const char*, long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::_Rep::_S_create(unsigned long, unsigned long, const std::allocator<char>&) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios::clear(std::_Ios_Iostate) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::seekoff(long, std::_Ios_Seekdir, std::_Ios_Openmode) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::runtime_error::runtime_error(const char*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o vtable for __cxxabiv1::__class_type_info SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member vtable for __cxxabiv1::__class_type_info must be defined in the program] std::string::_Rep::_M_destroy(const std::allocator<char>&) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios_base::Init::~Init() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios_base::Init::Init() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o typeinfo for std::runtime_error SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member typeinfo for std::runtime_error must be defined in the program] __cxa_guard_acquire SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::assign(const char*, unsigned long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::string::assign(const std::string &) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base, std::_Rb_tree_insert_and_rebalance&) SunOS5.11_64_OPT.OBJ/gtest/src/gt est-all.o __cxa_pure_virtual SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream & std::__ostream_insert<char, std::char_traits<char> >(std::ostream &, const char*, long) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ios::init(std::streambuf *) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_rethrow SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::ostream & std::ostream::_M_insert<const void*>(const void*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::locale::~locale() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::locale::locale() SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o typeinfo for std::ios_base SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o [Hint: static member typeinfo for std::ios_base must be defined in the program] std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::_Rb_tree_decrement(std::_Rb_tree_node_base*) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o std::stringbuf::pbackfail(int) SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o __cxa_guard_abort SunOS5.11_64_OPT.OBJ/gtest/src/gtest-all.o ld: fatal: symbol referencing errors gmake[2]: *** [SunOS5.11_64_OPT.OBJ/libgtest1.so] Error 2 gmake[2]: Leaving directory `/NSS/nss-3.32.1/nss/gtests/google_test' gmake[1]: *** [libs] Error 2 gmake[1]: Leaving directory `/NSS/nss-3.32.1/nss/gtests' gmake: *** [libs] Error 2 Thanks.. Usha On Wed, May 16, 2018 at 10:44 PM, Wan-Teh Chang <w...@google.com> wrote: > Hi Usha, > > dev-tech-crypto@lists.mozilla.org is a better mailing list for NSS > questions. > > On Wed, May 16, 2018 at 2:02 PM, Usha Nayak <usha...@gmail.com> wrote: > > Hello > > > > we are running into build error while building NSS on Solaris. > > > [... snipped ...] > > > > Build Error: > > .... > > gmake build > > gmake[4]: Entering directory `/nss-3.32.1/nspr/SunOS5.11_ > 64_OPT.OBJ/pr/src' > > rm -f libnspr4.so > > cc -xarch=v9 -G -h libnspr4.so -z combreloc -z defs -z ignore -Bdirect -o > > libnspr4.so -M ./nsprmap.sun ./prvrsion.o io/./prfdcach.o io/./prmwait.o > > io/./prmapopt.o io/./priometh.o io/./pripv6.o io/./prlayer.o io/./prlog.o > > io/./prmmap.o io/./prpolevt.o io/./prprf.o io/./prscanf.o io/./prstdio.o > > threads/./prcmon.o threads/./prrwlock.o threads/./prtpd.o > > linking/./prlink.o malloc/./prmalloc.o malloc/./prmem.o md/./prosdep.o > > memory/./prshm.o memory/./prshma.o memory/./prseg.o misc/./pralarm.o > > misc/./pratom.o misc/./prcountr.o misc/./prdtoa.o misc/./prenv.o > > misc/./prerr.o misc/./prerror.o misc/./prerrortable.o misc/./prinit.o > > misc/./prinrval.o misc/./pripc.o misc/./prlog2.o misc/./prlong.o > > misc/./prnetdb.o misc/./praton.o misc/./prolock.o misc/./prrng.o > > misc/./prsystem.o misc/./prthinfo.o misc/./prtpool.o misc/./prtrace.o > > misc/./prtime.o pthreads/./ptsynch.o pthreads/./ptio.o > > pthreads/./ptthread.o pthreads/./ptmisc.o md/unix/./unix.o > > md/unix/./unix_errors.o md/unix/./uxproces.o md/unix/./uxrng.o > > md/unix/./uxshm.o md/unix/./uxwrap.o md/unix/./solaris.o > > md/unix/./os_SunOS_sparcv9.o -lpthread -lposix4 -lsocket -lnsl -ldl > -lc > > cc: Warning: -xarch=v9 is deprecated, use -m64 -xarch=sparc instead > > Undefined first referenced > > symbol in file > > PR_Stat ./nsprmap.sun > > ld: fatal: symbol referencing errors > > I think this is because the NSS build system compiles NSPR with > -DNO_NSPR_10_SUPPORT. > > Please try editing nspr/pr/src/pthreads/ptio.c and deleting the > #ifndef NO_NSPR_10_SUPPORT and #endif around PR_Stat(). > > Wan-Teh > -- dev-tech-crypto mailing list dev-tech-crypto@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-crypto