Forum OpenACS Q&A: Re: aolserver 3.3+ad13 on MacOS X: startup failure

Collapse
Posted by Gabriel Ricard on
Ok, I think I figured it out. I hopped into /usr/lib and did the following shell command:

for c in `ls *dylib*`; do echo $c; nm $c | grep ERR_get_error; done

Looks like the ERR_get_error symbol is in libcrypto. Try adding '-lcrypto' to the MODLIBS line of nspostgres's Makefile and see if that helps.

Collapse
Posted by Tom Lazar on
hi gabriel,

thanks for the hint; i actually got it to work w/o the /usr/lib/ modifications you suggest: it turned out that i was mixing binaries between my two machines (dual ghz and 500 tibook).

when i repeated the whole procedure from scratch on my desktop machine, the db driver loaded fine.

of course, that still didn't mean that anything worked (bus error when accessing the site in the browser) but i eventually managed to get it to work by slimming down my startup .tcl to a bare minimum...

hint to markd: perhaps you'll want to post a slimmer version of your startup-file?

now i can run a local testbed version of my 'production site', yippi.

one thing remains, though (perhaps i did too much slimming down...) when trying to access the sitemap i get the following error, perhaps one of you knows what this means?

Database operation "select" failed (exception NSDB, "Query was not a statement returning rows.")

ERROR:  Function 'tree_ancestor_keys(varbit)' does not exist
        Unable to identify a function that satisfies the given argument types
        You may need to add explicit typecasts

SQL:
            select s2.node_id,
                  s2.name,
                  s2.directory_p,
                  tree_level(s2.tree_sortkey) as level,
                  acs_object__name(s2.object_id) as obj_name,
                  acs_permission__permission_p(s2.object_id, '2121', 'admin') as admin_p
            from (select tree_ancestor_keys(site_node_get_tree_sortkey('2115')) as tree_sortkey) parents,
                site_nodes s2
            where s2.tree_sortkey = parents.tree_sortkey
            order by level

    while executing
"ns_pg_bind select nsdb0 {
            select s2.node_id,
                  s2.name,
                  s2.directory_p,
                  tree_level(..."
    ("uplevel" body line 1)
    invoked from within
"uplevel $ulevel [list ns_pg_bind $type $db $sql"
    invoked from within
"db_exec select $db $full_statement_name $sql"
    invoked from within
"set selection [db_exec select $db $full_statement_name $sql]"
    ("uplevel" body line 2)
    invoked from within
"uplevel 1 $code_block "
    invoked from within
"db_with_handle db {
        set selection [db_exec select $db $full_statement_name $sql]

        set counter 0
        while { [db_getrow $db $selection] } {
            incr co..."
    (procedure "db_foreach" line 35)
    invoked from within
"db_foreach path_select {} {
  if {$node_id != $root_id && $admin_p == "t"} {
    doc_body_append "<a href=.?[export_url_vars expand:multiple root_id=$..."
    ("uplevel" body line 65)
    invoked from within
"uplevel {
          ad_page_contract {

    @author mailto:rhs@mit.edu
    @author mailto:bquinn@arsidigta.com
    @creation-date 2000-09-09
    @cvs-id $Id: index.tcl..."
    (procedure "code::tcl::/Volumes/Data/tomster/Projects/tomster.org/tomste..." line 2)
    invoked from within
"code::tcl::$__adp_stub"
    invoked from within
"if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init tcl $__adp_stub
..."
    ("uplevel" body line 3)
    invoked from within
"uplevel {

    if { [file exists $__adp_stub.tcl] } {

      # ensure that data source preparation procedure exists and is up-to-date
      adp_init t..."
    (procedure "adp_prepare" line 2)
    invoked from within
"adp_prepare "
    (procedure "template::adp_parse" line 30)
    invoked from within
"template::adp_parse [file root [ad_conn file]] {}"
    (procedure "adp_parse_ad_conn_file" line 7)
    invoked from within
"$handler"
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
        $handler
      } ad_script_abort val {
        # do nothing
      }"
    invoked from within
"rp_serve_concrete_file [ad_conn file]"
    (procedure "rp_serve_abstract_file" line 60)
    invoked from within
"rp_serve_abstract_file "$root/$path""
    ("uplevel" body line 2)
    invoked from within
"uplevel $code"
    invoked from within
"ad_try {
        rp_serve_abstract_file "$root/$path"
        set tcl_url2file([ad_conn url]) [ad_conn file]
        set tcl_url2path_info([ad_conn url]) [ad_conn path_inf..."

once again, thanks for your support!