Opened 7 years ago

Closed 7 years ago

#2632 closed task (complete)

Build/install instructions for Solaris

Reported by: shane Owned by: jelte
Priority: medium Milestone: Sprint-20130205
Component: Unclassified Version:
Keywords: Cc: bwynkoop@…
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: Core Feature Depending on Ticket:
Estimated Difficulty: 5 Add Hours to Ticket: 0
Total Hours: 0 Internal?: no

Description

We have a user who is experiencing a lot of pain getting BIND 10 setup on Solaris sparc.

We should confirm that the install notes at SystemNotesSolaris11 work, and if not, update them.

Subtickets

Change History (15)

comment:1 Changed 7 years ago by shane

  • Cc bwynkoop@… added; Brett Wynkoop <bwynkoop@…> removed

comment:2 Changed 7 years ago by jreed

We need a Sparc system to do this on.

The two systems I am currently using are:

SunOS sol-10.lab.isc.org 5.10 Generic_118833-33 sun4u sparc SUNW,Sun-Fire-V240

SunOS solaris11-x86-4 5.11 11.0 i86pc i386 i86pc

I think there is thing1 and thing2 (but maybe powered off) that maybe could be updated to same Solaris 11. Also there is t1000 used for BIND9 testing and it is Solaris 10.

comment:3 Changed 7 years ago by shane

Brett is using Solaris 10, so t1000 should be fine, if it has enough disk space and we are patient waiting for builds to finish, right?

comment:4 Changed 7 years ago by jelte

  • Milestone changed from Next-Sprint-Proposed to Sprint-20130205

comment:5 Changed 7 years ago by jelte

  • Owner set to jelte
  • Status changed from new to assigned

comment:6 Changed 7 years ago by shane

On behalf of Brett:

Between the source file fix I sent in and the makefile change that
Jinmei made today we have killed the first two bugs that I ran into on
building BIND 10 on Solaris 10 sparc.

Now on to the third problem:

gmake[6]: Entering directory `/export/src/bind10/src/lib/dns'
/bin/bash ../../../libtool  --tag=CXX   --mode=compile g++
-DHAVE_CONFIG_H -I. -I../../..  -I../../../src/lib -I../../../src/lib
-I../../../src/lib/dns -I../../../src/lib/dns -I../../../src/lib/util
-I../../../src/lib/util -I/usr/pkg/include -D_XPG4_2 -D__EXTENSIONS__
-DOS_SUN -DBOOST_DISABLE_THREADS=1 -I../../../ext/asio
-I../../../ext/coroutine -DASIO_DISABLE_THREADS=1
-DASIO_DISABLE_DEV_POLL=1 -Wall -Wextra -Wwrite-strings
-Woverloaded-virtual -Wno-sign-compare -Wno-missing-braces -Werror
-fPIC -g -O2 -MT libb10_dns___la-rrset_collection.lo -MD -MP
-MF .deps/libb10_dns___la-rrset_collection.Tpo -c -o
libb10_dns___la-rrset_collection.lo `test -f 'rrset_collection.cc' ||
echo './'`rrset_collection.cc libtool: compile:  g++ -DHAVE_CONFIG_H
-I. -I../../.. -I../../../src/lib -I../../../src/lib
-I../../../src/lib/dns -I../../../src/lib/dns -I../../../src/lib/util
-I../../../src/lib/util -I/usr/pkg/include -D_XPG4_2 -D__EXTENSIONS__
-DOS_SUN -DBOOST_DISABLE_THREADS=1 -I../../../ext/asio
-I../../../ext/coroutine -DASIO_DISABLE_THREADS=1
-DASIO_DISABLE_DEV_POLL=1 -Wall -Wextra -Wwrite-strings
-Woverloaded-virtual -Wno-sign-compare -Wno-missing-braces -Werror
-fPIC -g -O2 -MT libb10_dns___la-rrset_collection.lo -MD -MP
-MF .deps/libb10_dns___la-rrset_collection.Tpo -c rrset_collection.cc
-fPIC -DPIC -o .libs/libb10_dns___la-rrset_collection.o In file
included from /usr/pkg/include/boost/smart_ptr/shared_ptr.hpp:30:0,
from /usr/pkg/include/boost/shared_ptr.hpp:17,
from ../../../src/lib/dns/rrset.h:21,
from ../../../src/lib/dns/rrset_collection_base.h:18,
from ../../../src/lib/dns/rrset_collection.h:18, from
rrset_collection.cc:15: /usr/pkg/include/boost/checked_delete.hpp: In
instantiation of 'void boost::checked_delete(T*) [with T =
isc::dns::RRsetCollection::DnsIter]': /usr/pkg/include/boost/smart_ptr/detail/shared_count.hpp:95:13:
required from 'boost::detail::shared_count::shared_count(Y*) [with Y =
isc::dns::RRsetCollection::DnsIter]' /usr/pkg/include/boost/smart_ptr/shared_ptr.hpp:183:50:
required from 'boost::shared_ptr<T>::shared_ptr(Y*) [with Y =
isc::dns::RRsetCollection::DnsIter; T =
isc::dns::RRsetCollectionBase::Iter]' ../../../src/lib/dns/rrset_collection.h:146:65:
required from here /usr/pkg/include/boost/checked_delete.hpp:34:5:
error: deleting object of polymorphic class type
'isc::dns::RRsetCollection::DnsIter' which has non-virtual destructor
might cause undefined behaviour [-Werror=delete-non-virtual-dtor]
cc1plus: all warnings being treated as errors gmake[6]: ***
[libb10_dns___la-rrset_collection.lo] Error 1 gmake[6]: Leaving
directory `/export/src/bind10/src/lib/dns' gmake[5]: ***
[all-recursive] Error 1 gmake[5]: Leaving directory
`/export/src/bind10/src/lib/dns' gmake[4]: *** [all] Error 2 gmake[4]:
Leaving directory `/export/src/bind10/src/lib/dns' gmake[3]: ***
[all-recursive] Error 1 gmake[3]: Leaving directory
`/export/src/bind10/src/lib' gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/export/src/bind10/src' gmake[1]: ***
[all-recursive] Error 1 gmake[1]: Leaving directory
`/export/src/bind10' gmake: *** [all] Error 2 

I have not looked at this problem in detail yet, but I wanted to make
sure that it was reported as soon as I found it.

It may be something with the boost install on my box. I do not know.
I am not really a boost or python sort of guy.

Since the other two issues have been squashed it might be worthwhile to
put this bug on the "sprint list" in case I can not find the reason on
my own.

Here is some more data on the build system in question:

sabre.tekhq.com:uname -a
SunOS sabre.tekhq.com 5.10 Generic sun4u sparc SUNW,Sun-Blade-100
sabre.tekhq.com:
sabre.tekhq.com:file /bin/sh
/bin/sh:        ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped sabre.tekhq.com:

(Ok it is old & 32 bit, but that just means it is slow by today's
standards)

sabre.tekhq.com:ls /var/db/pkg | grep pyth
python32-3.2.3nb1
sabre.tekhq.com:

sabre.tekhq.com:ls /var/db/pkg | grep boost
boost-build-1.51.0
boost-docs-1.51.0
boost-headers-1.51.0nb1
boost-jam-1.51.0
sabre.tekhq.com:

If I find the fix for this I will let you know right away.

If you can give me any pointers of where to look I would appreciate it.

-Brett

comment:7 Changed 7 years ago by jelte

So far it looks like every solaris install has a completely separate set of problems, mostly to do with details on how packages/libraries are installed.

I have compiled a page with instructions for Solaris 10 that worked for me, we are currently looking into the issues Brett is having.

http://bind10.isc.org/wiki/SystemNotesSolaris10

comment:8 Changed 7 years ago by jelte

  • Owner changed from jelte to UnAssigned
  • Status changed from assigned to reviewing

The last of the issues Brett had wasn't specifically Solaris-related (but rather about boost), not sure where/how to put that but I'm putting my solaris notes up for 'review'.

comment:9 Changed 7 years ago by jinmei

  • Owner changed from UnAssigned to jinmei

comment:10 follow-up: Changed 7 years ago by jinmei

Some minimum level comments (which I think is what is requested in
this review):

  • "checkout out" should be "checkout" (or something
    ...git for checkout out the source code...
    
  • about gtest: shouldn't we at least build it?
    gtest does not have an 'install' target in its makefile, simply extract it to a directory (in this example /export/home/jelte/src/gcc/gtest-1.6.0)
    
  • as for the "two open issues": it'd be more convenient how exactly we work around the issue of #1905 in this wiki page.
  • for the test, maybe we can show an example command line input to disable it

comment:11 Changed 7 years ago by jinmei

  • Owner changed from jinmei to jelte

comment:12 in reply to: ↑ 10 ; follow-up: Changed 7 years ago by jelte

  • Owner changed from jelte to jinmei

Replying to jinmei:

Some minimum level comments (which I think is what is requested in
this review):

  • "checkout out" should be "checkout" (or something
    ...git for checkout out the source code...
    

'check out' i guess?

  • about gtest: shouldn't we at least build it?
    gtest does not have an 'install' target in its makefile, simply extract it to a directory (in this example /export/home/jelte/src/gcc/gtest-1.6.0)
    

no, if you use --with-gtest-source option it'll compile the whole gtest in the bind10 directory (through gtest-all.cc); I'll ask jeremy if this is documented somewhere :)

  • as for the "two open issues": it'd be more convenient how exactly we work around the issue of #1905 in this wiki page.

ok, added

  • for the test, maybe we can show an example command line input to disable it

ack, done

comment:13 in reply to: ↑ 12 Changed 7 years ago by jinmei

Replying to jelte:

  • about gtest: shouldn't we at least build it?
    gtest does not have an 'install' target in its makefile, simply extract it to a directory (in this example /export/home/jelte/src/gcc/gtest-1.6.0)
    

no, if you use --with-gtest-source option it'll compile the whole gtest in the bind10 directory (through gtest-all.cc); I'll ask jeremy if this is documented somewhere :)

Oh, I didn't know that. I should update the OSX page about this.
I'd explicitly note it for your Solaris page, but I'd leave it to you
and I don't think I need to review that anyway.

So please close the ticket with or without it.

comment:14 Changed 7 years ago by jinmei

  • Owner changed from jinmei to jelte

comment:15 Changed 7 years ago by jelte

  • Resolution set to complete
  • Status changed from reviewing to closed

thanks, done, closing ticket.

Note: See TracTickets for help on using tickets.