Greylisting / Howto

Hi,
I am trying to install the greylisting whith the howto published by Topicdesk.
I am having issues install berkeleydb. Here is the error message (part of it it's so long I am not getting the top of the error message...
BerkeleyDB.c:6656: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6712: error: 'RETVAL' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor__cclose':
BerkeleyDB.c:6725: error: syntax error before 'db'
BerkeleyDB.xs:4614: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4614: error: syntax error before ')' token
BerkeleyDB.c:6729: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6732: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6735: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6752: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_DESTROY':
BerkeleyDB.c:6766: error: syntax error before 'db'
BerkeleyDB.xs:4632: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4632: error: syntax error before ')' token
BerkeleyDB.c:6772: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6775: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursorstatus':
BerkeleyDB.c:6803: error: syntax error before 'db'
BerkeleyDB.xs:4649: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4649: error: syntax error before ')' token
BerkeleyDB.c:6807: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6810: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6813: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6821: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cdel':
BerkeleyDB.c:6837: error: syntax error before 'db'
BerkeleyDB.xs:4662: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4662: error: syntax error before ')' token
BerkeleyDB.c:6841: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6850: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6853: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6864: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cget':
BerkeleyDB.c:6880: error: syntax error before 'db'
BerkeleyDB.xs:4678: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4678: error: syntax error before ')' token
BerkeleyDB.c:6886: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6895: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6898: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6909: error: 'DBOPFLAGSMASK' undeclared (first use in this function)
BerkeleyDB.c:6909: error: 'DBSETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6912: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:6922: error: 'DBGETBOTH' undeclared (first use in this function)
BerkeleyDB.c:6929: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.c:6930: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.c:6931: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.c:6944: error: 'DBGETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6946: error: 'DBJOINITEM' undeclared (first use in this function)
BerkeleyDB.c:6949: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cpget':
BerkeleyDB.c:6965: error: syntax error before 'db'
BerkeleyDB.c:6195: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Common_dbsync':
BerkeleyDB.c:6221: error: syntax error before 'db'
BerkeleyDB.xs:4365: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4365: error: syntax error before ')' token
BerkeleyDB.c:6225: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6234: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6237: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6248: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Common_Txn':
BerkeleyDB.c:6262: error: syntax error before 'db'
BerkeleyDB.xs:4375: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4375: error: syntax error before ')' token
BerkeleyDB.c:6269: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6272: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6278: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:6284: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Commontruncate':
BerkeleyDB.c:6317: error: syntax error before 'db'
BerkeleyDB.xs:4398: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4398: error: syntax error before ')' token
BerkeleyDB.c:6323: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6326: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6329: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6354: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Commonassociate':
BerkeleyDB.c:6375: error: syntax error before 'db'
BerkeleyDB.xs:4426: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4426: error: syntax error before ')' token
BerkeleyDB.c:6382: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6385: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6388: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6394: error: 'secondary' undeclared (first use in this function)
BerkeleyDB.c:6397: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6427: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Common_associateforeign':
BerkeleyDB.c:6443: error: syntax error before 'db'
BerkeleyDB.xs:4457: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4457: error: syntax error before ')' token
BerkeleyDB.c:6451: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6454: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6457: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6463: error: 'secondary' undeclared (first use in this function)
BerkeleyDB.c:6466: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6492: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Commoncompact':
BerkeleyDB.xs:4483: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4483: error: syntax error before ')' token
BerkeleyDB.xs:4485: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6512: error: syntax error before 'db'
BerkeleyDB.c:6521: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6524: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:6621: error: 'DBOPFLAGSMASK' undeclared (first use in this function)
BerkeleyDB.c:6621: error: 'DBGETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6624: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor__cdup':
BerkeleyDB.c:6639: error: syntax error before 'db'
BerkeleyDB.xs:4556: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4556: error: syntax error before ')' token
BerkeleyDB.c:6644: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6653: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6656: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6712: error: 'RETVAL' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor__cclose':
BerkeleyDB.c:6725: error: syntax error before 'db'
BerkeleyDB.xs:4614: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4614: error: syntax error before ')' token
BerkeleyDB.xs:4701: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4701: error: syntax error before ')' token
BerkeleyDB.c:6972: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6981: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6984: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6995: error: 'DBOPFLAGSMASK' undeclared (first use in this function)
BerkeleyDB.c:6995: error: 'DBSETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6998: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:7008: error: 'DBGETBOTH' undeclared (first use in this function)
BerkeleyDB.c:7015: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.c:7016: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.c:7017: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.c:7032: error: 'DBGETRECNO' undeclared (first use in this function)
BerkeleyDB.c:7040: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cput':
BerkeleyDB.c:7056: error: syntax error before 'db'
BerkeleyDB.xs:4730: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4730: error: syntax error before ')' token
BerkeleyDB.c:7062: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7071: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7074: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6729: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6732: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6735: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6752: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_DESTROY':
BerkeleyDB.c:6766: error: syntax error before 'db'
BerkeleyDB.xs:4632: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4632: error: syntax error before ')' token
BerkeleyDB.c:6772: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6775: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursorstatus':
BerkeleyDB.c:6803: error: syntax error before 'db'
BerkeleyDB.xs:4649: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4649: error: syntax error before ')' token
BerkeleyDB.c:6807: warning: ISO C90 forbids mixed declarations andBerkeleyDB.c:7087: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:7104: error: 'DBT' has no member named 'flags'
BerkeleyDB.c:7105: error: 'DBT' has no member named 'dlen'
BerkeleyDB.c:7106: error: 'DBT' has no member named 'doff'
BerkeleyDB.c:7116: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_ccount':
BerkeleyDB.c:7132: error: syntax error before 'db'
BerkeleyDB.xs:4745: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4745: error: syntax error before ')' token
BerkeleyDB.c:7137: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7146: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7149: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:7168: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr__txnbegin':
BerkeleyDB.c:7183: error: syntax error before 'txnmgr'
BerkeleyDB.xs:4768: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4768: error: syntax error before ')' token
BerkeleyDB.c:7188: error: syntax error before 'RETVAL'
code
BerkeleyDB.c:6810: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6813: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6821: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cdel':
BerkeleyDB.c:6837: error: syntax error before 'db'
BerkeleyDB.xs:4662: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4662: error: syntax error before ')' token
BerkeleyDB.c:6841: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6850: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6853: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6864: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cget':
BerkeleyDB.c:6880: error: syntax error before 'db'
BerkeleyDB.xs:4678: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4678: error: syntax error befBerkeleyDB.c:7198: error: 'txnmgr' undeclared (first use in this function)
BerkeleyDB.c:7201: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7207: error: 'pid' undeclared (first use in this function)
BerkeleyDB.c:7213: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.xs:4771: error: 'txn' undeclared (first use in this function)
BerkeleyDB.xs:4772: error: 'p_id' undeclared (first use in this function)
BerkeleyDB.xs:4790: error: 'RETVAL' undeclared (first use in this function)
BerkeleyDB.xs:4790: error: syntax error before ')' token
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgrstatus':
BerkeleyDB.c:7262: error: syntax error before 'mgr'
BerkeleyDB.xs:4807: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4807: error: syntax error before ')' token
BerkeleyDB.c:7266: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7269: error: 'mgr' undeclared (first use in this function)
BerkeleyDB.c:7272: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7280: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_DESTROY':
BerkeleyDB.c:7294: error: syntax error before 'mgr'
BerkeleyDB.xs:4818: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4818: error: syntax error before ')' token
BerkeleyDB.c:7300: error: 'mgr' undeclared (first use in this function)
BerkeleyDB.c:7303: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnclose':
ore ')' token
BerkeleyDB.c:6886: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6895: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6898: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6909: error: 'DBOPFLAGSMASK' undeclared (first use in this function)
BerkeleyDB.c:6909: error: 'DBSETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6912: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:6922: error: 'DBGETBOTH' undeclared (first use in this function)
BerkeleyDB.c:6929: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.c:6930: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.c:6931: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.xs:4685: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.c:6944: error: 'DBGETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6946: error: 'DBJOINITEM' undeclared (first use in this function)
BerkeleyDB.c:6949: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cpget':
BerkeleyDB.c:6965: error: syntax error before 'db'
BerkeleyDB.xs:4701: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4701: error: syntax error before ')' token
BerkeleyDB.c:6972: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:6981: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:6984: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:6995: error: 'DBOPFLAGSMASK' undeclared (first use in this function)
BerkeleyDB.c:6995: error: 'DBSETRECNO' undeclared (first use in this function)
BerkeleyDB.c:6998: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:7008: error: 'DBGETBOTH' undeclared (first use in this function)
BerkeleyDB.c:7324: error: syntax error before 'txnp'
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txncheckpoint':
BerkeleyDB.c:7352: error: syntax error before 'txnp'
BerkeleyDB.xs:4850: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4850: error: syntax error before ')' token
BerkeleyDB.c:7359: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7362: error: 'txnp' undeclared (first use in this function)
BerkeleyDB.c:7365: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7378: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnstat':
BerkeleyDB.c:7392: error: syntax error before 'txnp'
BerkeleyDB.xs:4857: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4857: error: syntax error before ')' token
BerkeleyDB.c:7399: error: 'txnp' undeclared (first use in this function)
BerkeleyDB.c:7402: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.xs:4860: error: 'DBTXNSTAT' undeclared (first use in this function)
BerkeleyDB.xs:4875: error: request for member 'sttimeckp' in something not a structure or union
BerkeleyDB.xs:4876: error: request for member 'stlasttxnid' in something not a structure or union
BerkeleyDB.xs:4877: error: request for member 'st_maxtxns' in something not a structure or union
BerkeleyDB.xs:4878: error: request for member 'st_naborts' in something not a structure or union
BerkeleyDB.xs:4879: error: request for member 'st_nbegins' in something not a structure or union
BerkeleyDB.xs:4880: error: request for member 'st_ncommits' in something not a structure or union
BerkeleyDB.xs:4881: error: request for member 'st_nactive' in something not a structure or union
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnopen':
BerkeleyDB.c:7457: error: syntax error before 'dbenv'
BerkeleyDB.c: In function 'XSBerkeleyDB__Txnstatus':
BerkeleyDB.c:7472: error: syntax error before 'tid'
BerkeleyDB.xs:4910: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4910: error: syntax error before ')' token
BerkeleyDB.c:7476: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7479: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7482: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7490: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_settimeout':
BerkeleyDB.c:7504: error: syntax error before 'txn'
BerkeleyDB.xs:4922: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4922: error: syntax error before ')' token
BerkeleyDB.c:7510: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7514: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7517: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_set_txmax':
BerkeleyDB.c:7550: error: syntax error before 'txn'
BerkeleyDB.c:7015: error: 'DBT_B' has no member named 'flags'
BerkeleyDB.c:7016: error: 'DBT_B' has no member named 'dlen'
BerkeleyDB.c:7017: error: 'DBT_B' has no member named 'doff'
BerkeleyDB.c:7032: error: 'DBGETRECNO' undeclared (first use in this function)
BerkeleyDB.c:7040: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs:4939: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4939: error: syntax error before ')' token
BerkeleyDB.c:7555: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7559: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7562: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_get_txmax':
BerkeleyDB.c:7589: error: syntax error before 'txn'
BerkeleyDB.xs:4956: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4956: error: syntax error before ')' token
BerkeleyDB.c:7594: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7598: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7601: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_DESTROY':
BerkeleyDB.c:7631: error: syntax error before 'tid'
BerkeleyDB.xs:4973: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4973: error: syntax error before ')' token
BerkeleyDB.c:7637: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7640: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnunlink':
BerkeleyDB.c:7671: error: syntax error before 'dbenv'
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnprepare':
BerkeleyDB.c:7695: error: syntax error before 'tid'
BerkeleyDB.xs:5007: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5007: error: syntax error before ')' token
BerkeleyDB.c:7699: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_cput':
BerkeleyDB.c:7056: error: syntax error before 'db'
BerkeleyDB.xs:4730: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4730: error: syntax error before ')' token
BerkeleyDB.c:7062: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7071: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7074: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:7087: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c:7104: error: 'DBT' has no member named 'flags'
BerkeleyDB.c:7105: error: 'DBT' has no member named 'dlen'
BerkeleyDB.c:7106: error: 'DBT' has no member named 'doff'
BerkeleyDB.c:7116: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Cursor_ccount':
BerkeleyDB.c:7132: error: syntax error before 'db'
BerkeleyDB.xs:4745: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4745: error: syntax error before ')' token
BerkeleyDB.c:7137: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7146: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7149: error: called object 'BerkeleyDB__Cursor' is not a function
BerkeleyDB.c:7168: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr__txnbegin':
BerkeleyDB.c:7183: error: syntax error before 'txnmgr'
BerkeleyDB.xs:4768: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4768: error: syntax error before ')' token
BerkeleyDB.c:7188: error: syntax error before 'RETVAL'
BerkeleyDB.c:7198: error: 'txnmgr' undeclared (first use in this function)
BerkeleyDB.c:7201: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7207: error: 'pid' undeclared (first use in this function)
BerkeleyDB.c:7213: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.xs:4771: error: 'txn' undeclared (first use in this function)
BerkeleyDB.xs:4772: error: 'p_id' undeclared (first use in this function)
BerkeleyDB.xs:4790: error: 'RETVAL' undeclared (first use in this function)
BerkeleyDB.xs:4790: error: syntax error before ')' token
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgrstatus':
BerkeleyDB.c:7262: error: syntax error before 'mgr'
BerkeleyDB.xs:4807: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4807: error: syntax error before ')' token
BerkeleyDB.c:7266: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7269: error: 'mgr' undeclared (first use in this function)
BerkeleyDB.c:7272: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7280: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_DESTROY':
BerkeleyDB.c:7294: error: syntax error before 'mgr'
BerkeleyDB.xs:4818: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4818: error: syntax error before ')' token
BerkeleyDB.c:7300: error: 'mgr' undeclared (first use in this function)
BerkeleyDB.c:7303: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnclose':
BerkeleyDB.c:7324: error: syntax error before 'txnp'
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txncheckpoint':
BerkeleyDB.c:7352: error: syntax error before 'txnp'
BerkeleyDB.xs:4850: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4850: error: syntax error before ')' token
BerkeleyDB.c:7359: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7362: error: 'txnp' undeclared (first use in this function)
BerkeleyDB.c:7365: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.c:7378: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnstat':
BerkeleyDB.c:7392: error: syntax error before 'txnp'
BerkeleyDB.xs:4857: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4857: error: syntax error before ')' token
BerkeleyDB.c:7399: error: 'txnp' undeclared (first use in this function)
BerkeleyDB.c:7402: error: called object 'BerkeleyDB__TxnMgr' is not a function
BerkeleyDB.xs:4860: error: 'DBTXNSTAT' undeclared (first use in this function)
BerkeleyDB.xs:4875: error: request for member 'sttimeckp' in something not a structure or union
BerkeleyDB.xs:4876: error: request for member 'stlasttxnid' in something not a structure or union
BerkeleyDB.xs:4877: error: request for member 'st_maxtxns' in something not a structure or union
BerkeleyDB.xs:4878: error: request for member 'st_naborts' in something not a structure or union
BerkeleyDB.xs:4879: error: request for member 'st_nbegins' in something not a structure or union
BerkeleyDB.xs:4880: error: request for member 'st_ncommits' in something not a structure or union
BerkeleyDB.xs:4881: error: request for member 'st_nactive' in something not a structure or union
BerkeleyDB.c: In function 'XSBerkeleyDB__TxnMgr_txnopen':
BerkeleyDB.c:7457: error: syntax error before 'dbenv'
BerkeleyDB.c: In function 'XSBerkeleyDB__Txnstatus':
BerkeleyDB.c:7472: error: syntax error before 'tid'
BerkeleyDB.xs:4910: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4910: error: syntax error before ')' token
BerkeleyDB.c:7476: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7479: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7482: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7490: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_settimeout':
BerkeleyDB.c:7504: error: syntax error before 'txn'
BerkeleyDB.xs:4922: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4922: error: syntax error before ')' token
BerkeleyDB.c:7510: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7514: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7517: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_set_txmax':
BerkeleyDB.c:7550: error: syntax error before 'txn'
BerkeleyDB.xs:4939: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4939: error: syntax error before ')' token
BerkeleyDB.c:7555: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7559: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7562: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_get_txmax':
BerkeleyDB.c:7589: error: syntax error before 'txn'
BerkeleyDB.xs:4956: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4956: error: syntax error before ')' token
BerkeleyDB.c:7594: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7598: error: 'txn' undeclared (first use in this function)
BerkeleyDB.c:7601: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_DESTROY':
BerkeleyDB.c:7631: error: syntax error before 'tid'
BerkeleyDB.xs:4973: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:4973: error: syntax error before ')' token
BerkeleyDB.c:7637: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7640: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnunlink':
BerkeleyDB.c:7671: error: syntax error before 'dbenv'
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnprepare':
BerkeleyDB.c:7695: error: syntax error before 'tid'
BerkeleyDB.xs:5007: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5007: error: syntax error before ')' token
BerkeleyDB.c:7699: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7702: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7705: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7715: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txncommit':
BerkeleyDB.c:7739: error: syntax error before 'tid'
BerkeleyDB.xs:5025: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5025: error: syntax error before ')' token
BerkeleyDB.c:7743: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7752: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7755: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7767: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txnabort':
BerkeleyDB.c:7786: error: syntax error before 'tid'
BerkeleyDB.xs:5040: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5040: error: syntax error before ')' token
BerkeleyDB.c:7790: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7793: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7796: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7808: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txndiscard':
BerkeleyDB.c:7831: error: syntax error before 'tid'
BerkeleyDB.xs:5060: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5060: error: syntax error before ')' token
BerkeleyDB.c:7836: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7839: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7842: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7860: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnid':
BerkeleyDB.c:7879: error: syntax error before 'tid'
BerkeleyDB.xs:5075: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5075: error: syntax error before ')' token
BerkeleyDB.c:7883: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7887: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7890: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedHashFIRSTKEY':
BerkeleyDB.c:7909: error: syntax error before 'db'
BerkeleyDB.xs:5083: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5083: error: syntax error before ')' token
BerkeleyDB.c:7913: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7917: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7920: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs:5088: error: 'DBC' undeclared (first use in this function)
BerkeleyDB.xs:5107: error: 'DB_FIRST' undeclared (first use in this function)
BerkeleyDB.xs:5111: error: 'DB_NOTFOUND' undeclared (first use in this function)
BerkeleyDB.c:7702: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7705: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7715: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txncommit':
BerkeleyDB.c:7739: error: syntax error before 'tid'
BerkeleyDB.xs:5025: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5025: error: syntax error before ')' token
BerkeleyDB.c:7743: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7752: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7755: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7767: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txnabort':
BerkeleyDB.c:7786: error: syntax error before 'tid'
BerkeleyDB.xs:5040: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5040: error: syntax error before ')' token
BerkeleyDB.c:7790: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7793: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7796: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7808: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn__txndiscard':
BerkeleyDB.c:7831: error: syntax error before 'tid'
BerkeleyDB.xs:5060: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5060: error: syntax error before ')' token
BerkeleyDB.c:7836: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7839: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7842: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c:7860: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.c: In function 'XSBerkeleyDB__Txn_txnid':
BerkeleyDB.c:7879: error: syntax error before 'tid'
BerkeleyDB.xs:5075: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5075: error: syntax error before ')' token
BerkeleyDB.c:7883: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7887: error: 'tid' undeclared (first use in this function)
BerkeleyDB.c:7890: error: called object 'BerkeleyDB__Txn' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedHashFIRSTKEY':
BerkeleyDB.c:7909: error: syntax error before 'db'
BerkeleyDB.xs:5083: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5083: error: syntax error before ')' token
BerkeleyDB.c:7913: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7917: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7920: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs:5088: error: 'DBC' undeclared (first use in this function)
BerkeleyDB.xs:5107: error: 'DB_FIRST' undeclared (first use in this function)
BerkeleyDB.xs:5111: error: 'DB_NOTFOUND' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedHashNEXTKEY':
BerkeleyDB.c:7971: error: syntax error before 'db'
BerkeleyDB.xs:5126: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5126: error: syntax error before ')' token
BerkeleyDB.c:7976: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7980: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7983: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs:5134: error: 'DBTKEY' has no member named 'flags'
BerkeleyDB.xs:5136: error: 'DB_NEXT' undeclared (first use in this function)
BerkeleyDB.xs:5139: error: 'DB_NOTFOUND' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedArrayFETCHSIZE':
BerkeleyDB.c:8019: error: syntax error before 'db'
BerkeleyDB.xs:5153: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5153: error: syntax error before ')' token
BerkeleyDB.c:8023: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8027: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:8030: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c: In function 'XSBerkeleyDB__Common_db_createsequence':
BerkeleyDB.c:8051: error: syntax error before 'db'
BerkeleyDB.xs:5168: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5168: error: syntax error before ')' token
BerkeleyDB.c:8056: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8059: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:8062: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceopen':
BerkeleyDB.xs:5199: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5199: error: syntax error before ')' token
BerkeleyDB.c:8112: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8141: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceclose':
BerkeleyDB.xs:5216: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5216: error: syntax error before ')' token
BerkeleyDB.c:8160: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8192: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceremove':
BerkeleyDB.xs:5238: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5238: error: syntax error before ')' token
BerkeleyDB.c:8211: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8241: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__SequenceDESTROY':
BerkeleyDB.xs:5257: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5257: error: syntax error before ')' token
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceget':
BerkeleyDB.xs:5272: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5272: error: syntax error before ')' token
BerkeleyDB.c:8294: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedHashNEXTKEY':
BerkeleyDB.c:7971: error: syntax error before 'db'
BerkeleyDB.xs:5126: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5126: error: syntax error before ')' token
BerkeleyDB.c:7976: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:7980: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:7983: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs:5134: error: 'DBTKEY' has no member named 'flags'
BerkeleyDB.xs:5136: error: 'DB_NEXT' undeclared (first use in this function)
BerkeleyDB.xs:5139: error: 'DB_NOTFOUND' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB___tiedArrayFETCHSIZE':
BerkeleyDB.c:8019: error: syntax error before 'db'
BerkeleyDB.xs:5153: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5153: error: syntax error before ')' token
BerkeleyDB.c:8023: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8027: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:8030: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.c:8330: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getkey':
BerkeleyDB.xs:5290: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5290: error: syntax error before ')' token
BerkeleyDB.c:8349: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8373: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_initialvalue':
BerkeleyDB.xs:5310: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5310: error: syntax error before ')' token
BerkeleyDB.c:8393: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8420: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_setcachesize':
BerkeleyDB.xs:5327: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5327: error: syntax error before ')' token
BerkeleyDB.c:8439: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8460: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getcachesize':
BerkeleyDB.xs:5344: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5344: error: syntax error before ')' token
BerkeleyDB.c:8479: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8503: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_setflags':
BerkeleyDB.xs:5362: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5362: error: syntax error before ')' token
BerkeleyDB.c:8522: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8543: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getflags':
BerkeleyDB.xs:5379: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5379: error: syntax error before ')' token
BerkeleyDB.c:8562: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8586: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'boot_BerkeleyDB':
BerkeleyDB.xs:5414: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5414: error: syntax error before ')' token
BerkeleyDB.xs:5417: error: 'DBVERSIONMAJOR' undeclared (first use in this function)
BerkeleyDB.xs:5418: error: 'DBVERSIONMINOR' undeclared (first use in this function)
BerkeleyDB.xs:5418: error: 'DBVERSIONPATCH' undeclared (first use in this function)
BerkeleyDB.xs:5434: error: 'dbrecnot' undeclared (first use in this function)
BerkeleyDB.c: In function 'XSBerkeleyDB__Common_db_createsequence':
BerkeleyDB.c:8051: error: syntax error before 'db'
BerkeleyDB.xs:5168: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5168: error: syntax error before ')' token
BerkeleyDB.c:8056: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8059: error: 'db' undeclared (first use in this function)
BerkeleyDB.c:8062: error: called object 'BerkeleyDB__Common' is not a function
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceopen':
BerkeleyDB.xs:5199: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5199: error: syntax error before ')' token
BerkeleyDB.c:8112: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8141: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceclose':
BerkeleyDB.xs:5216: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5216: error: syntax error before ')' token
BerkeleyDB.c:8160: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8192: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceremove':
BerkeleyDB.xs:5238: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5238: error: syntax error before ')' token
BerkeleyDB.c:8211: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8241: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__SequenceDESTROY':
BerkeleyDB.xs:5257: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5257: error: syntax error before ')' token
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequenceget':
BerkeleyDB.xs:5272: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5272: error: syntax error before ')' token
BerkeleyDB.c:8294: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8330: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getkey':
BerkeleyDB.xs:5290: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5290: error: syntax error before ')' token
BerkeleyDB.c:8349: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8373: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_initialvalue':
BerkeleyDB.xs:5310: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5310: error: syntax error before ')' token
BerkeleyDB.c:8393: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8420: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_setcachesize':
BerkeleyDB.xs:5327: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5327: error: syntax error before ')' token
BerkeleyDB.c:8439: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8460: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getcachesize':
BerkeleyDB.xs:5344: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5344: error: syntax error before ')' token
BerkeleyDB.c:8479: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8503: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_setflags':
BerkeleyDB.xs:5362: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5362: error: syntax error before ')' token
BerkeleyDB.c:8522: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8543: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'XSBerkeleyDB__Sequence_getflags':
BerkeleyDB.xs:5379: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5379: error: syntax error before ')' token
BerkeleyDB.c:8562: warning: ISO C90 forbids mixed declarations and code
BerkeleyDB.c:8586: warning: pointer/integer type mismatch in conditional expression
BerkeleyDB.xs: In function 'boot_BerkeleyDB':
BerkeleyDB.xs:5414: error: 'my_cxtp' undeclared (first use in this function)
BerkeleyDB.xs:5414: error: syntax error before ')' token
BerkeleyDB.xs:5417: error: 'DBVERSIONMAJOR' undeclared (first use in this function)
BerkeleyDB.xs:5418: error: 'DBVERSIONMINOR' undeclared (first use in this function)
BerkeleyDB.xs:5418: error: 'DBVERSIONPATCH' undeclared (first use in this function)
BerkeleyDB.xs:5434: error: 'dbrecnot' undeclared (first use in this function)
lipo: can't open input file: /var/tmp//ccGoTbzX.out (No such file or directory)
make: * [BerkeleyDB.o] Error 1
/usr/bin/make -- NOT OK
Running make test
Can't test without successful make
Running make install
make had returned bad status, install seems impossible
I have found what might be the way to fix. Anyone has any idea?
Inside the db-4.5.20/perl/BerkeleyDB/config.in file are these lines:
# 1. Where is the file db.h?
INCLUDE = /usr/local/BerkeleyDB/include
# 2. Where is libdb?
LIB = /usr/local/BerkeleyDB/lib
They look pretty good... except for the fact that the BDB make installed
everything under
/usr/local/BerkeleyDB.4.5
and no, it didn't bother with a symlink.
Once I'd made that link
/usr/local/BerkeleyDB -> /usr/local/BerkeleyDB.4.5
the build ran very quickly and without errors.
Cheers
Ben

Indeed, at this point if you don't know how to un-do what it is you have done,
quite honestly your best bet is to do a full wipe & reinstall, and if you are going to use
anyone's instructions (typically, tutorials), then make sure to fully read it from start to finish,
and not install things that are not meant to be installed.
If you know what you've done and why, with all due respect you should already be on your way to solving your conundrum(s), and not even needing to ask for any help here

Similar Messages

  • Sbo HowTos at a glance

    Hi all,
    the number of SAP Business One HowTos is growing.
    If you need a hint, you might consider checking here:
    http://www.itwiki.net/ow.asp?SboHowTo
    Itwiki is a non-commercial wiki made from developers for developers.
    Ibai has just added another HowTo.
    Lutz Morrien

    Just wondering...
    Is anyone interested in these postings?
    I am just trying to pass on information with them, but if they are just annoying, I will stop posting them.
    Lutz Morrien

  • HOWTOs to setup VoIP don't work on my N81

    Hello,
    I have a Nokia N81 and I want to setup SIP on it, using my VoipBuster account.
    I've successfully configured this account a thousand times on different systems, but it seems impossible to get it to work with my Nokia phone, even after following the HOWTOs everybody reported to work with their phones:
    http://www.poromenos.org/node/74
    http://forums.whirlpool.net.au/forum-replies-archive.cfm/751303.html
    I am 200% sure that I've entered the details correctly and added the relevant profile in "Tools -> Settings -> Connection -> Internet Tel.", but when I go to "Tools -> Connectivity -> Internet Tel.", select my home network and try to connect, I get this error message: "Unable to connect to the connection network". And if I try to call a number via "Internet call", I get "Internet telephone service not available".
    What may be going wrong? Does this /smartphone/ store error logs like operating systems do (they may help to find the problem)?
    The other weird thing I've noticed is that the phone *always* overrides "Transport Type" to "Auto" in both the proxy and registrar sections. I've tried many times to set it to UDP, but it always sets it to "Auto".
    Just in case: I can use this account with the software I have installed on my computer (from the same network) and my Nokia phone has no problem to access the Internet via my home network.
    Thanks in advance.
    Message Edited by gnarea on 15-Sep-2008 05:45 PM

    Hello,
    I have a Nokia N81 and I want to setup SIP on it, using my VoipBuster account.
    I've successfully configured this account a thousand times on different systems, but it seems impossible to get it to work with my Nokia phone, even after following the HOWTOs everybody reported to work with their phones:
    http://www.poromenos.org/node/74
    http://forums.whirlpool.net.au/forum-replies-archive.cfm/751303.html
    I am 200% sure that I've entered the details correctly and added the relevant profile in "Tools -> Settings -> Connection -> Internet Tel.", but when I go to "Tools -> Connectivity -> Internet Tel.", select my home network and try to connect, I get this error message: "Unable to connect to the connection network". And if I try to call a number via "Internet call", I get "Internet telephone service not available".
    What may be going wrong? Does this /smartphone/ store error logs like operating systems do (they may help to find the problem)?
    The other weird thing I've noticed is that the phone *always* overrides "Transport Type" to "Auto" in both the proxy and registrar sections. I've tried many times to set it to UDP, but it always sets it to "Auto".
    Just in case: I can use this account with the software I have installed on my computer (from the same network) and my Nokia phone has no problem to access the Internet via my home network.
    Thanks in advance.
    Message Edited by gnarea on 15-Sep-2008 05:45 PM

  • Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto

    h1. Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto
    Author: Dude
    Version: D
    Last modified: 14-Jan-2012
    You are welcome to add comments, but please do not discuss your installation issues in this thread.  If you have a question about the instructions, please add a simple note to the link of your own thread. The instructions are the result of my own research and development. If you would like to use any of the information for your own blog or website, please include a link to this reference to include future changes.
    Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto
    h2. Purpose
    This document outlines instructions how to install Oracle XE under Ubuntu 11.10.
    Ubuntu or Debian based Linux is not on the list of supported operation systems according to the Oracle documentation at http://download.oracle.com/docs/cd/E17781_01/install.112/e18802/toc.htm. You may want to consider virtualization software like Oracle Virtualbox and install Oracle Enterprise Linux as a free and professional alternative to installing XE under Ubuntu. You can also download pre-build virtual machines that include Oracle XE. You can browse http://otn.oracle.com/community/developer-vm for more information.
    h2. Topics
    h4. 1) Install Linux Ubuntu
    h4. 2) Remote Terminal
    h4. 3) Install Additional Software
    h4. 4) Managing Swap Space
    h4. 5) Modify Kernel Parameters
    h4. 6) Oracle Home Directory
    ...a) Resize the Root Partition
    ...b) Setup External Storage
    h4. 7) ORA-00845: MEMORY_TARGET
    h4. 8) Installing Oracle 11gR2 Express Edition
    h4. 9) Post-Installation
    h4. 10) Tips and Troubleshooting
    ...a) Port 1521 appears to be in use by another application
    ...b) cannot touch `/var/lock/subsys/listener': No such file or directory
    ...c) ORA-00845: MEMORY_TARGET
    ...d) Apex ADMIN password
    ...e) SYS and SYSTEM password
    ...f) Uninstall Oracle 11g XE
    ...g) Reconfigure Oracle 11g XE
    ...h) Gnome Classic desktop
    ...i) Unix vi cursor keys
    ...j) Backup Database
    h4. 11) History
    h4. 12) References
    h2. 1) Install Linux Ubuntu
    The following assumes you have installed Ubuntu 11.10 Desktop Edition for AMD 64-bit, or upgraded from a previous version. Keep in mind that Oracle 11gR2 Express Edition is only available for 64-bit architecture. It is not necessarily a requirement, but I would not bother to install Oracle 11gR2 XE on a system with less than 2 GB of RAM installed. You can download Ubuntu for free at: http://www.ubuntu.com/download/ubuntu and install it using the default settings provided.
    You can apply the latest OS patch-sets by clicking the power button icon in the upper right hand corner of the screen and selecting "Updates available..."
    h2. 2) Remote Terminal
    You will need command line access to perform the installation tasks. Select the top "Dash Home" button of the Unity toolbar and enter the word "terminal", or use CTRL-ALT-t. If you prefer to open a remote terminal session use SSH. Ubuntu does not come with a secure shell login by default. To install it, use the following command:
    sudo apt-get install openssh-serverYou cannot login as root unless you set a root password using the "sudo passwd root" command. However, you can get root user access using the "sudo" command, which requires only to re-enter the password of your personal account. Access to "sudo" is controlled by the /etc/sudoers file.
    The best way to establish a remote command line session as root is to login with your personal account, e.g.: ssh [email protected], and then type "sudo su -" to become root, or use "sudo <command>" to execute individual commands. If your account does not have "sudo" access you can login as root using "su - root", but will need to know the root password.
    h2. 3) Install Additional Software
    Oracle 11g Express Edition requires additional software that is not installed by default:
    sudo apt-get install alien libaio1 unixodbch2. 4) Managing Swap Space
    Oracle demands that the minimum swap space for Oracle Database XE is 2 GB (2095100 KB) or twice the size of RAM, whichever is lesser. Enter the following shell command to verify your swap space:
    cat /proc/meminfo | grep -i swap
    SwapCached:            0 kB
    SwapTotal:       2095100 kB
    SwapFree:        2095100 kBYou can increase available swap space by using a swap file as long as disk space permits. The advantage of a swap file versus a swap partition is flexible space management because you can add or delete swap space on demand as necessary. The following will create and enable an additional 1 GB swap file at system startup, located in the /home directory:
    Login as root:
    sudo su -Enter the following commands:
    dd if=/dev/zero of=/home/swapfile bs=1024 count=1048576
    mkswap /home/swapfile
    swapon /home/swapfile
    swapon -aCreate a backup of the original "fstab" file and add the new swap file:
    cp /etc/fstab /etc/fstab.backup_`date +%N`
    echo '/home/swapfile swap swap defaults 0 0' >> /etc/fstabExit from root and verify the new swap space:
    exit
    swapon -s
    Filename                    Type          Size     Used     Priority
    /dev/sda5                               partition     2095100     0     -1
    /home/swapfile                          file          1048572     0     -2Swap space is not a substitute for installed RAM. Swap space is a safeguard that allows the system to move idle processes to disk before the OOM killer will begin to terminate processes in order to free up enough real memory to keep the system operational. The general rule for sizing the swap space depends on the size of installed RAM. If your system has less then 4 GB of RAM the swap space should usually be at least twice this size. If you have more than 8 GB of RAM installed you may consider to use an equal size as swap space. The more RAM you have installed, the less likely you are going to run into memory starvation, and the less likely you are going to need swap space, unless you have a bad process.
    h2. 5) Modify Kernel Parameters
    Oracle 11gR2 Express Edition requires the following Kernel parameters. Enter the commands exactly as shown:
    Login as root:
    sudo su -Cut & paste the following directly into a command shell (not a text editor):
    cat > /etc/sysctl.d/60-oracle.conf <<-EOF
    # Oracle 11g XE kernel parameters
    fs.file-max=6815744
    net.ipv4.ip_local_port_range=9000 65500
    kernel.sem=250 32000 100 128
    # kernel.shmmax=429496729
    kernel.shmmax=107374183
    EOFLoad and verify the new kernel parameters:
    service procps start
    sudo sysctl -q fs.file-max
    sudo sysctl -q kernel.shmmax
    sudo sysctl -q net.ipv4.ip_local_port_range
    sudo sysctl -q kernel.sem The SHMMAX kernel parameter defines the upper memory limit of a process. It is a safeguard to stop a bad process from using all memory and causing RAM starvation. The Linux default is 32 MB. The official Oracle XE installation documentation suggests a value of 4 GB -1 bytes (429496729). Since Oracle 11g XE has a 1 GB memory limit, a smaller footprint will be a better safeguard for the complete system. Setting the SHMMAX parameter to 107374183 will be sufficient.
    h2. 6) Oracle Home Directory
    At the time of this writing, Enterprise Linux 6 is not supported for Oracle database yet. It is therefore not possible to confirm Oracle ext4 filesystem compatibility, which is default in Ubuntu 11. According to various information, ext4 may cause a performance problem for Oracle 11g database. The following will show you how to add a ext3 partition to your existing setup.
    h3. 6.a) Resize the Root Partition
    Provided you have sufficient free disk space, you should be able to resize the root partition to create an extra ext3 filesystem. Considering the 11 GB user datafile limit of the Express Edition, 18 GB should be more than enough.
    You can use the free Gparted Live CD to shrink your startup volume. Gparted downloads are available at http://sourceforge.net/projects/gparted/files/gparted-live-stable. When burning the CD, pay attention to burn the raw .iso image and not the possibly "mounted" image. If you are using a virtual machine like Oracle Virtualbox, you can mount the .iso image directly. There are going to be a few prompts when the system starts from the CD, but you can press Return to accept the defaults.
    When the Gparted window appears:
    - Select your ext4 root partition, usually /dev/sda1
    - Select the "Resize/Move" button from the toolbar.
    - Enter 18000 into the "Free space following" field and press the Return key.
      Be careful not not change the start of the partition!
    - Click the "Resize/Move" of the dialog and then then the "Apply" toolbar button.
      The process may take several minutes - do not abandon it!
    - Select the new unallocated free space of ~ 18 GB and push the "New" button.
    - Set the file system to "ext3" and label it "oraclexe" and click the "Add" button.
      Be sure to label it oraclexe, otherwise the follow-up instructions will fail.
    - Finally select "Apply from the toolbar to apply the changes.
    - Quit "Gparted", select "Exit" from the desktop and choose "Reboot" to restart the system.
    {code}
    After the system has restarted, open a terminal command shell.
    Login as root:
    {code}
    sudo su -
    {code}
    Backup "fstab" and add the UUID of the partition. The "tr" command remove the quotes:
    {code}
    cp /etc/fstab /etc/fstab_`date +%N`
    uuid=`blkid | grep oraclexe | awk '{print $3}'`
    uuid=`echo $uuid | tr -d '\042'`
    echo $uuid
    echo "$uuid  /u01  ext3  errors=remount-ro 0 1" >> /etc/fstab
    {code}
    The UUID is a unique number and should look similar to:
    {code}
    UUID=d1db753e-b5dd-4a4c-a61e-259c69867b58
    {code}
    Restart the system:
    {code}
    reboot
    {code}
    Verify the success:
    {code}
    df -h /u01
    {code}
    h3. 6.b) Setup External Storage
    If you prefer to setup an external drive to install Oracle XE, beware that it can be a fatal mistake to make an entry in /etc/fstab to automount your external storage device.  An unavailable device in /etc/fstab will prevent a system startup and prompt for appropriate actions at the console.
    The following is an example of how to prepare an external storage device to be used for Oracle 11g, including a script to automatically mount an external drive at system startup without the disadvantages of /etc/fstab. The script will also take into consideration that a device name might shift if you attach additional devices.
    To find out which USB devices are connected:
    {code}
    sudo parted -l
    {code}
    Look for the device that matches your USB storage. For example: /dev/sdb1
    {code}
    Model: USB 2.0 Flash Disk (scsi)
    Disk /dev/sdb: 2064MB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Number  Start   End     Size    File system  Name     Flags
    1      20.5kB  1929MB  1929MB  hfs+         mystick
    {code}
    Initialize the device using ext3 filesystem - this will erase all data. The "-c" option will check for bad blocks (read-only), "-L" is the volume label:
    {code}
    sudo umount /dev/sdb1
    sudo mkfs.ext3 -c -L oraclexe /dev/sdb1
    {code}
    Install the pmount distribution package:
    {code}
    sudo apt-get install pmount
    {code}
    Login as root:
    {code}
    sudo su -
    {code}
    Cut & paste the following into the command prompt (not a text editor):
    {code}
    cat > /etc/init.d/oracle-mount <<-EOF
    #! /bin/sh
    # /etc/init.d/oracle-mount
    VOL_UUID=alphanumeric
    VOL_LABEL=oraclexe
    VOL_SYMLINK=/u01
    mount=/usr/bin/pmount
    uuid2dev() {
       VOL_DEVICE="\`blkid | grep \$VOL_UUID | awk '{print \$1}'\`"
       VOL_DEVICE="\`echo \$VOL_DEVICE | tr -d ':'\`"
       echo \$VOL_DEVICE
    case "\$1" in
      start)
        echo "Starting script /etc/init.d/oracle-mount"
        uuid2dev
        \$mount \$VOL_DEVICE \$VOL_LABEL
        if [ -d /media/\$VOL_LABEL ]; then
           echo "Mount \$VOL_DEVICE success"
           ln -sf /media/\$VOL_LABEL \$VOL_SYMLINK
        else
           echo "Error mouting \$VOL_DEVICE"
        fi
      stop)
        echo "Stopping script /etc/init.d/oracle-mount"
        uuid2dev
        /bin/umount \$VOL_DEVICE 2>/dev/null
        if [ "\`/usr/bin/pmount | /bin/grep \$VOL_DEVICE\`" ]; then
           echo "Error unmounting \$VOL_DEVICE"
        else
           rm -f \$VOL_SYMLINK
        fi
        echo "Usage: /etc/init.d/oracle-u01 {start|stop}"
        exit 1
    esac
    ### BEGIN INIT INFO
    # Provides:          oracle-mount
    # Required-Start:    \$remote_fs \$syslog
    # Required-Stop:     \$remote_fs \$syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Start daemon at boot time
    # Description:       Mount hotplug-usb drive and create symlink
    ### END INIT INFO
    EOF
    {code}
    Install the oracle-mount init script:
    {code}
    chmod 755 /etc/init.d/oracle-mount
    update-rc.d oracle-mount defaults 01 99
    {code}
    Get the UUID of the volume "oraclexe" and update the VOL_UUID in the init script accordingly:
    {code}
    uuid=`blkid | grep oraclexe | awk '{print $3}'`
    echo $uuid
    sed -i "s/^VOL_UUID=.*/VOL_$uuid/g" /etc/init.d/oracle-mount
    {code}
    The UUID of your device will be a unique number, but should be similar to:
    {code}
    UUID="3f5e9963-b328-49f3-b3e8-a3561ae34106"
    {code}
    Logout of root and test the init script:
    {code}
    exit
    sudo /etc/init.d/oracle-mount stop
    ls /u01
    sudo /etc/init.d/oracle-mount start
    ls /u01
    {code}
    Your output should look like:
    {code}
    Stopping script /etc/init.d/oracle-mount
    /dev/sdb1
    ls: cannot access /u01: No such file or directory
    Starting script /etc/init.d/oracle-mount
    /dev/sdb1
    Mount /dev/sdb1 success
    lost+found
    {code}
    h2. 7) ORA-00845: MEMORY_TARGET
    Oracle 11gR2 XE under Ubuntu 11.10 will result in "ORA-00845: MEMORY_TARGET not support on this system" either at Oracle database startup or during the initial installation. Ubuntu 11.10 uses a new version of the "systemd" system and session manager and has migrated away from /dev/shm and other common directories in favor of /run.
    There are several ways how to address the problem. You can either enable /dev/shm shared memory, or change the default memory management of Oracle 11g from AMM (Automatic Memory Management) to ASMM (Automatic Shared Memory Management) as it was in used the previous 10g version. Since AMM is one of the new features of 11g, the following will show you how to make to make AMM work.
    Login as root:
    {code}
    sudo su -
    {code}
    Cut & paste the following into the command prompt (not a text editor):
    {code}
    cat > /etc/init.d/oracle-shm <<-EOF
    #! /bin/sh
    # /etc/init.d/oracle-shm
    case "\$1" in
      start)
        echo "Starting script /etc/init.d/oracle-shm"
        # Run only once at system startup
        if [ -e /dev/shm/.oracle-shm ]; then
          echo "/dev/shm is already mounted, nothing to do"
        else
          rm -f /dev/shm
          mkdir /dev/shm
          mount -B /run/shm /dev/shm
          touch /dev/shm/.oracle-shm
        fi
      stop)
        echo "Stopping script /etc/init.d/oracle-shm"
        echo "Nothing to do"
        echo "Usage: /etc/init.d/oracle-shm {start|stop}"
        exit 1
    esac
    ### BEGIN INIT INFO
    # Provides:          oracle-shm
    # Required-Start:    $remote_fs $syslog
    # Required-Stop:     $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: Bind /run/shm to /dev/shm at system startup.
    # Description:       Fix to allow Oracle 11g use AMM.
    ### END INIT INFO
    EOF
    {code}
    Install the oracle-shm init script:
    {code}
    chmod 755 /etc/init.d/oracle-shm
    update-rc.d oracle-shm defaults 01 99
    {code}
    Restart the system:
    {code}
    reboot
    {code}
    Verify the success:
    {code}
    sudo cat /etc/mtab | grep shm
    {code}
    {code}
    none /run/shm tmpfs rw,nosuid,nodev 0 0
    /run/shm /dev/shm none rw,bind 0 0
    {code}
    The upper limit of shared memory under Linux is set to 50 % of the installed RAM by default. If your system has less than 2 GB of RAM installed, there is still a chance to run into ORA-00845 error if your shared memory is used by other software.
    The verify available shared memory, type the following commands:
    {code}
    sudo df -h /run/shm
    {code}
    h2. 8) Installing Oracle 11gR2 Express Edition
    The final release version of Oracle 11gR2 Express Edition can be downloaded for free at http://otn.oracle.com/database/express-edition/downloads. The software should automatically downloaded into the "Downloads" folder of your home directory.
    Enter the following commands to unpack the installer:
    {code}
    cd ~/Downloads
    unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
    rm oracle-xe-11.2.0-1.0.x86_64.rpm.zip
    {code}
    The Debian Linux based package management of Ubuntu is not compatible with the Red Hat package manager. The Oracle installer needs to be converted using the following commands:
    {code}
    cd ~/Downloads/Disk1
    sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm
    (This may take a few minutes)
    rm oracle-xe-11.2.0-1.0.x86_64.rpm
    {code}
    The following needs to be set for compatibility:
    {code}
    sudo ln -s /usr/bin/awk /bin/awk
    sudo mkdir /var/lock/subsys
    {code}
    Ubuntu uses different tools to manage services and system startup scripts. The "chkconfig" tool required by the Oracle installer is not available in Ubuntu. The following will create a file to simulate the "chkconfig" tool.
    Login as root:
    {code}
    sudo su -
    {code}
    Copy & paste the following *directly* into the command prompt to create a file:
    {code}
    cat > /sbin/chkconfig <<-EOF
    #!/bin/bash
    # Oracle 11gR2 XE installer chkconfig hack for Debian based Linux (by dude)
    # Only run once.
    echo "Simulating /sbin/chkconfig..."
    if [[ ! \`tail -n1 /etc/init.d/oracle-xe | grep INIT\` ]]; then
    cat >> /etc/init.d/oracle-xe <<-EOM
    ### BEGIN INIT INFO
    # Provides:                  OracleXE
    # Required-Start:        \\\$remote_fs \\\$syslog
    # Required-Stop:        \\\$remote_fs \\\$syslog
    # Default-Start:            2 3 4 5
    # Default-Stop:            0 1 6
    # Short-Description:   Oracle 11g Express Edition
    ### END INIT INFO
    EOM
    fi
    update-rc.d oracle-xe defaults 80 01
    EOF
    {code}
    Exit root:
    {code}
    exit
    {code}
    Set execute privileges:
    {code}
    sudo chmod 755 /sbin/chkconfig
    {code}
    Install Oracle 11gR2 Express Edition entering the following commands:
    {code}
    cd ~/Downloads/Disk1
    sudo dpkg --install ./oracle-xe_11.2.0-2_amd64.deb
    (This may take a couple of minutes)
    {code}
    Run the configuration script to create (clone) the database and follow the screen. Accept the default answers, including "y" to startup the database automatically, or modify as required.
    {code}
    sudo /etc/init.d/oracle-xe configure
    (This can take a few minutes - the installation completed successfully.)
    {code}
    To verify success, the procedure should end showing:
    {code}
    Starting Oracle Net Listener...Done
    Configuring database...Done
    Starting Oracle Database 11g Express Edition instance...Done
    Installation completed successfully.
    {code}
    Set a password for the Oracle account:
    {code}
    sudo passwd oracle
    {code}
    h2. 9) Post-Installation
    In order to use sqlplus and other tools, the Oracle account requires specific environment variables. The following will set these variables automatically at every Oracle login:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Copy the default account skeleton files and add the Oracle env script to .profile:
    {code}
    cp /etc/skel/.bash_logout ./
    cp /etc/skel/.bashrc ./
    cp /etc/skel/.profile ./
    echo "" >>./.profile
    echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile
    {code}
    By default, the Oracle Database XE graphical user interface is only available at the local server, but not remotely. The following will enable remote logins:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and execute the following:
    {code}
    sqlplus / as sysdba
    SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
    exit
    {code}
    See http://download.oracle.com/docs/cd/E17781_01/admin.112/e18585/toc.htm for more information.
    h3. a) Unity desktop configurations
    The Oracle XE menu under the previous Gnome Classic desktop shows several useful scripts to backup the database, start and stop the database, etc. Under the Unity based desktop this menu is not available. You can either switch to the Gnome Classic desktop as outlined in chapter 2, or perform the following steps to modify and copy the scripts as outlined below. The start and stop database scripts will also be modified to perform a progress feedback.
    Login as user root:
    {code}
    sudo su -
    {code}
    Convert desktop files:
    {code}
    cd /usr/share/applications
    sed -i 's/Categories.*/Categories=Database;Office;Development;/g' oraclexe*
    sed -i 's/MultipleArgs/X-MultipleArgs/g' oraclexe*
    sed -i 's/MimeType.*/MimeType=application\/x-database/g' oraclexe*
    sed -i 's/.png//g' oraclexe*
    sed -i 's/Terminal=false/Terminal=true/g' oraclexe-startdb.desktop
    sed -i 's/Terminal=false/Terminal=true/g' oraclexe-stopdb.desktop
    {code}
    Exit root:
    {code}
    exit
    {code}
    Login as user Oracle:
    {code}
    su - oracle
    {code}
    Modify database start and stop scripts:
    {code}
    cd /u01/app/oracle/product/11.2.0/xe/config/scripts
    cp startdb.sh start.sh_orig
    cp stopdb.sh stopdb.sh_orig
    sed -i 's/>.*//g' startdb.sh
    sed -i 's/>.*//g' stopdb.sh
    {code}
    You will need SYSDBA privileges and set Oracle environment variables in order to use your regular user account.
    Login to your regular user account:
    {code}
    su - dude
    {code}
    Enter the folowing command:
    {code}
    sudo usermod -a -G dba dude
    {code}
    Then update your profile to automatically set the necessary Oracle environment variables:
    {code}
    echo "" >>./.profile
    echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >>./.profile
    {code}
    Update your Desktop folder to contain useful Oracle XE scripts:
    {code}
    cp /usr/share/applications/oraclexe* ~/Desktop
    chmod 750 ~/Desktop/oraclexe*
    {code}
    To verify success re-login and try "sqlplus":
    {code}
    su - oracle
    sqlplus / as sysdba
    {code}
    h2. 10) Tips and Troubleshooting
    h3. 10. a) Port 1521 appears to be in use by another application
    Error: Port 1521 appears to be in use by another application. Specify a different port.This error happens after a previously unsuccessful configuration attempt using /etc/init.d/oracle-xe configure script. The script was able to start the Listener process, but most likely failed to continue  to clone the database, e.g. ORA-00845. The following should correct the problem:
    Determine the oracle listener process that is already running:
    {code}
    $ ps -ef | grep oracle
    {code}
    Your output should be similar to:
    {code}
    oracle   19789     1  0 19:46 ?        00:00:00 /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr
    {code}
    Then kill the process, using the appropriate process id, for instance:
    {code}
    $ sudo kill -9 19789
    {code}
    h3. 10.b) cannot touch `/var/lock/subsys/listener': No such file or directory
    Starting Oracle Net Listener...touch: cannot touch `/var/lock/subsys/listener': No such file or directoryThis error occurs when you run /etc/init.d/oracle-xe configure, but failed the preinstallation step to create the /var//lock/subsys directory as outlined in chapter 8.
    h3. 10.c) ORA-00845: MEMORY_TARGET
    ORA-00845: MEMORY_TARGET not supported on this system See chapter 7 to enable /dev/shm and verify free space available in /run/shm
    h3. 10.d) Apex ADMIN password
    According to the Oracle documentation, the password for the INTERNAL and ADMIN Oracle Application Express user accounts is initially the same as the SYS and SYSTEM administrative user accounts. Well, I tried several times without success. To reset the Apex Admin password:
    Login as user oracle:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following:
    {code}
    sqlplus / as sysdba
    {code}
    At the SQL prompt, type the following to be prompted to change the password:
    {code}
    SQL> @?/apex/apxxepwd.sql
    exit
    {code}
    When done, open your browser and go to http://127.0.0.1:8080/apex
    Workspace: Internal
    Username: ADMIN
    Password: password you set with apxxepwd.sql
    I will prompt you to reset the password:
    old password: password you set with apxxepwd.sql
    new password: final_password
    You can also login as the Apex Admin using http://127.0.0.1:8080/apex/apex_admin
    h3. 10.e) SYS and SYSTEM password
    Use the following commands to reset the SYS and SYSTEM passwords if necessary:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following at the SQL prompt:
    {code}
    sqlplus / as sysdba
    SQL> alter user sys identified by "password" account unlock;
    SQL> alter user system identified by "password" account unlock;
    SQL> exit
    {code}
    h3. 10.f) Uninstall Oracle 11g XE
    The following will completely uninstall and remove Oracle 11g XE:
    Open a terminal seesion and login as user root:
    {code}
    sudo su -
    {code}
    Enter the following:
    {code}
    /etc/init.d/oracle-xe stop
    dpkg --purge oracle-xe
    rm -r /u01/app
    rm /etc/default/oracle-xe
    update-rc.d -f oracle-xe remove
    update-rc.d -f oracle-mount remove
    update-rc.d -f oracle-shm remove
    {code}
    h3. 10.g) Reconfigure Oracle 11g XE
    Type the following commands in a terminal window:
    {code}
    sudo /etc/init.d/oracle-xe stop
    sudo rm /etc/default/oracle-xe
    sudo /etc/init.d/oracle-xe configure
    {code}
    h3. 10.h) Gnome Classic desktop
    Ubuntu 11 moved from the Gnome Classic desktop to Unity and removed the "Ubuntu Classic" login option. Unity was designed to make more efficient use of space given a limited screen size and touch screens. If you prefer to use the Gnome Classic desktop, enter the following into a terminal window:
    {code}
    sudo apt-get install gnome-panel
    {code}
    To log into the Gnome Classic desktop, select the "Gearwheel" at the login screen and select "Gnome Classic".
    h3. 10.i) Unix vi cursor keys
    The instructions in this tutorial do not require the use of any text editor. However, if you would like use the backspace and cursor keys in the "vi-editor", the following needs to be installed:
    {code}
    sudo apt-get install vim
    {code}
    h3. 10.j) Backup Database
    In order to perform an online database backup using the supplied "Backup Database" script, the database needs to run in Archive-Log mode. This can be setup using the following commands:
    Login as the Oracle user:
    {code}
    su - oracle
    {code}
    Login as SYSDBA and type the following:
    {code}
    sqlplus / as sysdba
    SQL> shutdown immediate
    SQL> startup mount
    SQL> alter database archivelog;
    SQL> alter database open;
    SQL> exit
    {code}
    h2. 11) History
    Version: A, 24-Oct-2011
    - first release
    Version: B, 25-Oct-2011
    - reduced instructions.
    - corrected errors in 6a and 8.
    - new strategy addressing ORA-00845 error.
    - rework of chapter 10.
    Version: C, 30-Nov-2011
    - corrected typo in 6a
    - new procedures in 9a.
    - added progress feedback to database scripts.
    Version D, 14-Jan-2012
    - corrected presentation errors.
    - reorganized instructions.
    h3. 12) References
    http://download.oracle.com/docs/cd/E17781_01/install.112/e18802/toc.htm
    http://askubuntu.com/questions/57297/why-has-var-run-been-migrated-to-run
    http://lwn.net/Articles/436012/
    https://forums.oracle.com/forums/thread.jspa?threadID=2300750&tstart=0
    Kind regards and best of luck!
    Dude.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    Excellent Blog. Thank You
    Small clarification on Step **6) Oracle Home Directory, ...a) Resize the Root Partition**
    Ubuntu 11.10 has Gparted available as a Ubuntu software download, DONT use that while trying the above step, instead download the ISO file from http://sourceforge.net/projects/gparted/files/gparted-live-stable/ gparted-live-0.12.0-5.iso (124.6 MB)
    Burn that ISO file on a Blank DVD, reboot the Ubuntu , during startup select Boot from DVD Option if not already selected. this will take to Boot Menu Options of Gparted Live then select the first menu option, and this allows to do further action such as Re-sizing .
    and once you have chosen and executed step a) . do NOT run step b) also that is "Setup External Storage"
    I hope this minor clarification can avoid some confusion
    Regards
    Madhusudhan Rao
    Edited by: MadhusudhanRao on Mar 24, 2012 11:30 PM

  • Install Oracle 11gR2 Express Edition on Ubuntu Linux 11.04 (64-bit) Howto

    h2. Install Oracle 11gR2 Express Edition on Ubuntu Linux 11.04 (64-bit) Howto
    Version: B
    Author: Dude, 24. May 2011
    The following are step by step instructions how to install Oracle 11gR2 Express Edition (Beta) under Linux Ubuntu 11.04, 64-bit.
    Access to the Internet is required.
    The instructions cover the following additional topics:
    - Converting Red Hat based Oracle XE installer to Ubuntu.
    - Work-around for missing /sbin/chkconfig tool.
    - Install Oracle XE into a different directory or disk volume.
    - Relocate and configure the Oracle user and default login directory.
    - Uninstall, reconfigure and perform first database backup.
    - Notes and web links.
    - Troubleshooting
    h3. A) System Setup and Prerequisites
    h4. A.1. System Access
    You will need terminal command line, root and system console access to perform the setup tasks.
    To open a Terminal at the system console:
    Menu Applications > Accessories > TerminalThe following commands will enable remote ssh login with root access:
    sudo apt-get install openssh-server
    sudo passwd root
    Verify:
    ssh root@xe_server_host_nameh4. A.2. Software Prerequisites
    The following is required in order to install Oracle 11gR2 XE:
    sudo apt-get install alien libaio1 unixodbcThe following is not required, but it will fix backspace and arrow keys in case you prefer using the vi-editor:
    sudo apt-get install vimh4. A.3. System Swap space
    Minimum swap space required is 2 GB. You can increase swap space if necessary using a swap file:
    To analyze current swap space and memory configuration:
    sudo cat /proc/meminfo
    To install a 1 GB swapfile named swapfile in /, for example:
    sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
    (this may take a while)
    sudo mkswap /swapfile
    sudo swapon /swapfile
    sudo cp /etc/fstab /etc/fstab.orig
    sudo echo '/swapfile swap swap defaults 0 0' >> /etc/fstab
    Verify:
    sudo swapon -a
    sudo swapon -sh4. A.4. Kernel Parameters
    Oracle 11g XE requires the following additional kernel parameters:
    sudo nano /etc/sysctl.d/60-oracle.conf
    (Enter the following)
    # Oracle 11g XE kernel parameters
    fs.file-max=6815744
    net.ipv4.ip_local_port_range=9000 65000
    kernel.sem=250 32000 100 128
    kernel.shmmax=536870912
    (Save the file)
    Note: kernel.shmmax = max possible value, e.g. size of physical RAM.
    Verify: sudo cat /etc/sysctl.d/60-oracle.conf
    Load new kernel parameters:
    sudo service procps start
    Verify:
    sudo sysctl -q fs.file-max
    -> fs.file-max = 6815744h4. A.5. Oracle Installation Directory
    The current Oracle Installation Guide uses the same directory like in previous versions: /usr/lib/oracle/xe/app/oracle/product/11.2.0/server. However, the current Beta installation uses Oracle Flexible Architecture (OFA) and installs into /u01/app/oracle/product/11.2.0/xe. Due to size limitations of Oracle XE it may not be necessary to store the installation to a specific directory or separate volume, but it is possible:
    Install Oracle XE to separate disk volume:
    From the system console menu: System > Administration > Disk Utility
    Select "ext3" filesystem for Oracle compatibility and specify a Volume label, e.g. Oracle.
    Notice the device name e.g. /dev/sdb
    Get the drive UUID:
    sudo blkid
    e.g. /dev/sdb: UUID="d19a2d8f-da43-4802-8bdb-0703c855e23a"
    Modify /etc/fstab to automatically mount the volume at system startup:
    sudo cp /etc/fstab /etc/fstab.original
    sudo nano /etc/fstab
    (Add the following, using determined UUID, for exmple)
    UUID=d19a2d8f-da43-4802-8bdb-0703c855e23a /u01 ext3 defaults,errors=remount-ro 0 1
    (Save the file)
    Create the mount-point, mount the new volume and set ownership and privileges:
    sudo mkdir /u01
    sudo mount -a
    sudo chown root:root /u01
    sudo chmod 755 /u01
    Verify:
    df -h
    or restart the systemYou can also install Oracle XE into a specific directory:
    Create a symbolic link to store the installation into an existing directory, for instance:
    sudo mkdir /home/oracle-xe
    sudo ln -s /home/oracle-xe /u01h3. C) Oracle 11g XE Download and Installation
    h4. C.1. Download and convert the Installer from Red Hat to Ubuntu
    Please see section E.3. to download the Oracle 11gR2 XE installer.
    Select the version listed for Linux x64.
    sudo unzip linux.x64_11gR2_OracleXE.zip
    sudo alien --to-deb --scripts oracle-xe-11.2.0-0.5.x86_64.rpm
    (This may take a while)h4. C.2. Create a special chkconfig script
    The Red Hat based installer of Oracle XE 11gR2 beta relies on +/sbin/chkconfig+, which is not used in Ubuntu. The chkconfig package available for the current version of Ubuntu produces errors and my not be safe to use. Below is a simple trick to get around the problem and install Oracle XE successfully:
    Create /sbin/chconfig:
    sudo nano /sbin/chkconfig
    (Cut and paste the following)
    #!/bin/bash
    # Oracle 11gR2 XE installer chkconfig hack for Debian by Dude
    file=/etc/init.d/oracle-xe
    if [[ ! `tail -n1 $file | grep INIT` ]]; then
       echo >> $file
       echo '### BEGIN INIT INFO' >> $file
       echo '# Provides:             OracleXE' >> $file
       echo '# Required-Start:       $remote_fs $syslog' >> $file
       echo '# Required-Stop:        $remote_fs $syslog' >> $file
       echo '# Default-Start:        2 3 4 5' >> $file
       echo '# Default-Stop:         0 1 6' >> $file
       echo '# Short-Description:    Oracle 11g Express Edition' >> $file
       echo '### END INIT INFO' >> $file
    fi
    update-rc.d oracle-xe defaults 80 01
    (Save the file)
    Set appropriate execute privileges:
    chmod 755 /sbin/chkconfig
    Note: You should remove the /sbin/chkconfig file after successful installation of Oracle XE.
    h4. C.3. Install and configure Oracle XE
    sudo dpkg --install ./oracle-xe_11.2.0-1.5_amd64.deb
    /etc/init.d/oracle-xe configure
    (This will take a while)
    Remove the /sbin/chkconfig script, which is no longer needed.
    sudo rm /sbin/chkconfigh4. C.4. Relocate and Configure the Oracle user login
    The Oracle XE installer specifies /u01/app/oracle as the login directory for the Oracle user. Although not really necessary, the following will relocate the Oracle user $HOME to a standard location and create standard /etc/skel login files:
    Exit all Oracle user sessions:
    sudo /etc/init.d/oracle-xe stop
    sudo kill -9 `ps -ef | grep oracle | grep -v grep | awk '{print $2}'`
    sudo userdel oracle
    sudo useradd -s /bin/bash -G dba -g dba -m oracle
    sudo passwd oracle
    Verify:
    sudo id oracle
    -> uid=1001(oracle) gid=1001(dba) groups=1001(dba)h4. C.5. Setup Oracle environment variables
    In order to use sqlplus and other tools, the Oracle account requires certain environment variables. The following will set these variables automatically at every interactive Oracle login:
    sudo echo '. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh' >> /home/oracle/.bashrch4. C.6. Oracle sudo root access
    It is not essential to allow the Oracle user to use sudo, but it is convenient:
    usermod -G admin oracle
    Verify:
    id oracle
    -> uid=1001(oracle) gid=1001(dba) groups=1001(dba),120(admin)
    sudo su -
    -> Enter Oracle account passwordh4. C.7. Oracle 11g XE Post-installation
    After you install Oracle Database XE, its graphical user interface is only available from the local server, but not remotely.
    The following will correct the problem if necessary:
    Login as user Oracle or use:
    su - oracle
    sqlplus / as sysdba
    At the SQL prompt, enter the following command:
    EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
    exith3. D) Unintstall, Reconfigure and Troubleshooting
    h4. D.1. Uninstall Oracle 11g XE
    The following will completely uninstall and remove Oracle 11g XE:
    Login as user root:
    sudo su -
    /etc/init.d/oracle-xe stop
    dpkg --purge oracle-xe
    rm -r /u01/app
    rm /etc/default/oracle-xe
    update-rc.d -f oracle-xe removeh4. D.2. Reconfigure Oracle 11g XE
    Type the following in a terminal window:
    /etc/init.d/oracle-xe stop
    sudo rm /etc/default/oracle-xe
    /etc/init.d/oracle-xe configureh4. D.3. Enable Archivelog mode and perform a database backup
    Login as user Oracle:
    su - oracle
    sqlplus / as sysdba
    At the SQL prompt, enter the following commands:
    shutdown immediate
    startup mount
    alter database archivelog;
    alter database open;
    exit
    Login to system console of the Oracle user account:
    Select Applications > Oracle Database 11g Express Edition > Backup Databaseh3. E) Notes
    h4. E.1. Oracle 11g XE limitiations overview
    - It will consume, at most, processing resources equivalent to one CPU.
    - Only one installation of Oracle Database XE can be performed on a single computer.
    - The maximum amount of user data in an Oracle Database XE database cannot exceed 11 GB.
    - The maximum amount of RAM that Oracle XE uses cannot exceed 1 GB, even if more is available.
    - HTTPS is not supported natively with the HTTP listener built into Oracle Database XE.
    h4. E.2. Documentation and Links
    Official documentation for Oracle 11gR2 XE can be found at:
    http://www.oracle.com/pls/xe112/homepage
    h4. E.3. Oracle 11g XE downloads
    The Installer is available from the Oracle Technology Network at:
    http://www.oracle.com/technology/products/database/xe
    http://www.oracle.com/technetwork/database/express-edition/downloads/index.html
    h4. E.4 APEX links and archives
    The APEX archives can be found at:
    http://www.oracle.com/technetwork/developer-tools/apex/application-express/all-archives-099381.html
    The APEX download site is:
    http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html
    h3. F) Troubleshooting
    ... in progress
    Regards and best of luck!
    Edited by: Dude on May 25, Version B: various corrections. chkconfig package (A.2.) not required.

    even though I am admin user.Admin user is a MS Windows term, that does not apply to Linux or Unix in the same fashion.
    The configuration script tells you "You must be root user to run the configure script. Login as root user and
    then run the configure script."
    This is most likely correct because your account is not root and does not have UID 0. What you can do is to login as root e.g. sudo su -, as the message suggest, or use "sudo /etc/init.d/oracle-xe configure", provided your account is defined in the /etc/sudoers file to perform root/admin actions.
    Btw, do not modify /etc/passwd and /etc/group to give you admin privileges or try to create a another root account under a different name. That's not the way it works and usually leads to nasty problems.

  • File download/upload howto

    Regarding the Fil upload/download at
    http://www.oracle.com/technology/products/database/htmldb/howtos/howto_file_upload.html
    How can I add a 'Delete' button next to each file in the Download report region to delete that file from the wwv_flow_files table?
    Thanks

    You need to pass the ID of the file you want to
    to delete. Take a look at
    http://htmldb.oracle.com/pls/otn/f?p=11602:1 .
    How can I pass the id of the file? I thought that would be in the session state :DEL (which is what I aliased the id column to in the report region), thats why I did 'delete from wwv_flow_files where id=:DEL'
    Few questions, if you dont mind.
    1. How do you get your After header process code to show up on the page?
    2. Where do you set your :P1_DEL?
    3. How do you get your 'Delete File' text box to be displayed in that fashion? My after header process's success messges just gets displayed with a green checkmark next to it. How can I change the formatting like you did?
    4. Where did you get the 'Upload' button gif? Does that come with HTMLDB? Or did you pick it up from the Internet and upload it?
    5. Regarding the upload button, is that displayed in a 'region position' or 'among the region's items'? I have never seen it in that position!
    Thanks for your continued help. I appreciate it.

  • HOWTO: Use BC4J With or Without DB Triggers

    This HowTo describes how to use BC4J, database sequences and triggers
    and what are the ramifications.
    INTRODUCTION
    BC4J has the ability to work with database sequences in order to obtain a
    unique value when inserting records. BC4J also has the ability to
    work either with a 'before insert' trigger which automatically creates
    a new unique value for the primary key or without a trigger. When not using
    a database trigger, BC4J also has the ability to obtain the sequence value
    and set the primary key value.
    Before discussing the ramifications of using one approach or the other, let's
    show examples of how to use both approaches:
    BC4J & sequences WITH a database trigger
    and
    BC4J & sequences WITHOUT a database trigger
    HOWTO DEMONSTRATION STEPS
    To illustrate both scenarios a simple database setup script is provided which
    creates two tables:
    CUSTOMER_NT which DOES NOT have a before insert trigger and
    CUSTOMER_WT which DOES have a trigger.
    Database Install Script:
    <code>
    drop trigger customer_insert_trigger;
    drop table customer_wt;
    drop table customer_nt;
    drop sequence customer_wt_seq;
    drop sequence customer_nt_seq;
    create sequence customer_wt_seq start with 1;
    create sequence customer_nt_seq start with 101;
    create table customer_wt(
    id number,
    name varchar2(30),
    constraint
    customer_wt_pk
    primary key (id)
    create table customer_nt(
    id number,
    name varchar2(30),
    constraint
    customer_nt_pk
    primary key (id)
    prompt Inserting data...
    insert into customer_wt (id, name)
    values (customer_wt_seq.nextval, 'Mickey');
    insert into customer_wt (id, name)
    values (customer_wt_seq.nextval, 'Goofy');
    insert into customer_nt (id, name)
    values (customer_nt_seq.nextval, 'Daffy');
    insert into customer_nt (id, name)
    values (customer_nt_seq.nextval, 'Porky');
    commit
    prompt Creating trigger
    create trigger customer_insert_trigger
    before insert on customer_wt for each row
    begin
    select customer_wt_seq.nextval into :new.id from dual ;
    end;
    </code>
    The next step is to create the DEFAULT Entity Objects and View Objects using
    the Business Components Wizard.
    USING BC4J WITH A DATABASE TRIGGER
    Let's modify the entity object CustomerWt so it can use the database trigger.
    Edit the entity object CustomerWt by right-clicking in the navigator.
    Click on the 'Attribute Settings' tab and edit the ID attribute.
    - Uncheck 'Mandatory'checkbox. This allows you to insert without a value for the primary key
    - Check 'Refresh after Insert'. This obtains the value from the database generated by the trigger.
    - Check 'Updateable While New'. Id is only updateable when inserting.
    Click finish to complete the wizard. Save all and recompile the project.
    Now let's test our work.
    In the navigator right-click the application module and select 'Test..'. This will launch
    BC4J's built in tester. Connect to the application.
    In the tester double-click the CustomerWtView view object to run a test edit form.
    After the edit form renders, navigate through the existing records using the navigate
    buttons on the edit form. Now let's insert a record to execute the trigger.
    click on the '+' button to insert a record. Enter a value in the 'Name' field and commit the change.
    Observe that a new value has automatically been inserted into the Id field.
    That's it! You have successfully used BC4J and a database trigger.
    Now let's try it without a trigger..
    USING BC4J WITHOUT A DATABASE TRIGGER
    Now edit the entity object CustomerNT so it doesn't need a database trigger.
    Similar to before, edit the entity object CustomerNt by right-clicking in the navigator.
    Click on the 'Attribute Settings' tab and edit the ID attribute.
    - Uncheck 'Mandatory'checkbox.
    - Check 'Updateable While New'.
    An additional step is also required. The Create method will have to be modified to extract
    the value of the sequence.
    In the Edit EntityObject Wizard click the Java tab and select Create method and click Finish.
    The create method is generated in your Java fil e. In the Workspace view of the Navigator,
    expand the CustomerNt entity object in the navigator. Double-click
    CustomerNtImpl.java to open it in the Source Editor. In the Structure pane, double-click
    create(AttributeList). Modify the Create method so it looks like this:
    <code>
    public void create(AttributeList attributeList) {
    super.create(attributeList);
    SequenceImpl s = new SequenceImpl("customer_nt_seq", getDBTransaction());
    Integer next = (Integer)s.getData();
    setId(new Number(next.intValue())); }
    </code>
    Save and compile the project.
    Now test the ViewObject CustomerNtView using the tester as before.
    In the edit form of CustomerNTView click on the '+' to insert a record. Observe that
    just as before a new value has automatically been inserted in the ID field!
    TO USE A DB TRIGGER OR NOT TO USE A DB TRIGGER.
    Using a Database trigger sometimes preferable if you have non BC4J applications
    also sharing the database. In this case it is still safest to just let the database
    update it's own primary keys.
    If you don't have any other non-BC4J applications sharing the database, then not using
    a database trigger is perfectly acceptable and can have slightly better performance.
    The important thing to remember is that the option is yours to use either approach!
    null

    Thank you for the reply Jonathon. I am using a ViewObject which
    consist of several tables. I haven't tried the DB trigger
    approach but just using the BC4 approach in overriding the
    create method.
    Here is the parent class create as a part of the
    FasNameImpl.java file which does the job correctly.
    public void create(AttributeList attributeList) {
    super.create(attributeList);
    SequenceImpl l_seq = new SequenceImpl
    ("SEQ_CUSTOMER_ID",getDBTransaction());
    Integer l_next = (Integer)l_seq.getData();
    setCustomerId(new Number(l_next.intValue()));
    This is when I triedpassing the value to the child table. But I
    can't figure it out. I think the link is working fine if I had a
    ViewLink deployed but it doesn't look like it's doing the job
    for ViewObject.
    I am trying to call the childclass.method
    (FasCustomer.setCustomerId(l_next);
    But I am getting error.
    Thanks a lot for your suggestions,
    Kamran
    703 696 1121

  • Howto drag and drop emails as reminders in ical

    Howto drag and drop emails as reminders (or tasks) in ical

    Just drag the message from Mail onto Calendar and drop it.
    I'm guessing you tried this and it doesn't work?
    What happens when you try?

  • HOWTO: Hide the delete button in a NavigatorBar

    HOWTO: Hide the delete button in a NavigatorBar (JSP)
    Goal: Hide the delete button in a NavigatorBar or JSNavigatorBar Data Web Bean. This example works for either bean.
    Solution: Edit the .jsp file containing your NavigatorBar bean. For a generated BC4J JSP application, the file is YourView_Top.jsp.
    Find the code that instantiates the NavigatorBar. It will look something like:
    <jsp:useBean class="oracle.jbo.html.databeans.NavigatorBar" id="tb" scope="request">
    <%
    tb.initialize(pageContext, "MyProject1_bizcomp_BizcompModule.MyView");At this point, add the following line of code to hide the delete button:
    tb.getButton(tb.NAVIGATE_DELETE).setButtonVisible(false);You can find the variable names for the other navigator buttons in the javadoc for oracle.jbo.html.databeans.BaseNavigatorBar. In the online help, this is under Reference -> Business Components Reference.
    null

    Georges,
    This has come up before, and after some experimentation, there's not a straightforward way to do it.
    There are two possible solutions that I can think of:
    1. Write your own custom bean and/or extend the beans provided to modify them to your needs.
    2. Wait for the 3.2 release at the end of the month. This release provides custom data tags with much finer grained control over specific items such as the buttons.
    I think 2 is preferable, if you have the time to wait.

  • HOWTO: Control Printer Attributes for a Report at Run Time Reports 6i

    HOWTO: Control Printer Attributes for a Report at Run Time
    Like page width , height etc
    my problem is i had installed a printer and it is set for
    printing different reports ( like invoice slips , legal size ,
    A3 etc ) each time i have to manually set the page settup from
    printer folder .instead if there is an option to set the printer
    attributes from Reports 6i it is great
    rajesh

    All the Printer Setup(Page Height and Page Width) must be set in
    the Reprot Program. These can be set at the Layout-Main Section
    in the Object Navigator.
    hth

  • Looking for a howto for an applescript to batch convert PPTS to Keynote...

    Looking for a howto for an applescript to batch convert PPTS to Keynote...
    Hi to group!
    (cross posted this a couple of weeks ago to Keynote forum, no responses) Perhaps the query really belongs here...)
    (I) Have a whole bunch of PPTs to convert to Keynote, now and more as time goes on.
    Looked into applescript to try to automate this a bit (could open PPT file but did not see any way to 'Save' file from a script).
    Also looked into bash scripting/automator too -- way too many options to choose from. Help!
    Anybody done anything similar to this already?
    TIA for pointers. //GH

    A word of caution.
    I have not tried the workflow before.
    I am not an applescript expert.
    These steps were quickly composed using my basic knowledge in Applescript
    What I was planning was to create a script droplet that when a ppt file is dropped upon it, it extracts the name of the file and sets it to a variable to name the keynote file later. You might have to modify it a bit to batch process multiple files.
    Try going through batch processing scripts made for quark or Adobe photoshop ( Not sure if these exist on internet) to see how they have implemented the steps in applescript.
    To GUI Script Keynote, do these steps...
    All the code has to go in here
    <pre title="this text can be pasted into the Script Editor" style="font-family: Monaco, 'Courier New', Courier, monospace; font-size: 10px; padding: 5px; width: 720px; color: #000000; background-color: #E0E0E0; overflow: auto">activate application "Keynote.app"
    tell application "System Events"
       tell process "Keynote"
          -- insert GUI Scripting statements here
       end tell
    end tell
    </pre>
    <pre title="this text can be pasted into the Script Editor" style="font-family: Monaco, 'Courier New', Courier, monospace; font-size: 10px; padding: 5px; width: 720px; color: #000000; background-color: #E0E0E0; overflow: auto">click menu item "Export…"  of menu 1 of menu bar item "File"  of menu bar 1</pre>
    This will click the next.. button provided the default export type is set to PPT
    <pre title="this text can be pasted into the Script Editor" style="font-family: Monaco, 'Courier New', Courier, monospace; font-size: 10px; padding: 5px; width: 720px; color: #000000; background-color: #E0E0E0; overflow: auto">click button 2 of sheet 1 of window 2
    </pre>
    This will click the Export button on the next window
    click button 1 of sheet 1 of window 2
    This piece of code can be used to set the name of the ppt file using the extracted name in the first step
    <pre title="this text can be pasted into the Script Editor" style="font-family: Monaco, 'Courier New', Courier, monospace; font-size: 10px; padding: 5px; width: 720px; color: #000000; background-color: #E0E0E0; overflow: auto">set value of text field 1 of sheet 1 of window 2 to "<string>"
    </pre>
    May be there is a better way out there.
    Thanks for red_menace for his Script formatter script
    Message was edited by: dj9027

  • Problem with HowTo guide - Use the BI Java SDK in a Web Dynpro Application

    Hello,
    I am following the HowTo guide - Use the BI Java SDK in a Web Dynpro Application
    at <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e49be590-0201-0010-0c83-fc20e5da124f">this link</a>.
    I have configured the connector on the WAS as needed.
    The problem is that when I run the application I receive an Unauthorized error on the connector URL.
    If I open this URL on a browser I receive a pop-up for UID and PWD and when I enter the same UID and PWD I used to configure the connector I am able to login and see the WSDL.
    Any ideas?

    I've never tried using BI in WebDynpro !!!
    But i foond one posting on the connection problem https://forums.sdn.sap.com/click.jspa?searchID=955524&messageID=2133396
    Regards,Anilkumar

  • HOWTO: Using a BC4J Application Module in an Stateless EJB Session Bean

    HOWTO: Using a BC4J Application Module in an Stateless EJB Session Bean
    by Steve Muench
    Overview
    BC4J provides automatic facilities for deploying any application module as a stateful EJB session bean. If you want to leverage the features of your BC4J application module from a stateless EJB session bean, it's not automatic but it is straightforward to implement. This howto article explains the details.
    For our example, we will create a stateless EJB session bean that uses a container-managed transaction. To keep things simple, let's assume the session bean has a single public method on its remote interface named createDepartment() with the following signature:
    public void createDepartment(int id, String name, String loc) throws AppException
    AppException is an example of an application-specific exception that our method will throw if any problems arise during its execution.The goal of this article is to illustrate how to use the BC4J application module named com.example.hr.HRApp as part of the implementation of this createDepartment method on our stateless enterprise bean. Let's assume that the HRApp application module has a view object member named Departments, based on the com.example.hr.DeptView view object, based on the familiar DEPT table and related to the com.example.hr.Dept entity object so our view can be updateable.
    Creating the Stateless Session Bean
    We can start by using the JDeveloper Enterprise Bean wizard to create a new stateless session bean called StatelessSampleEJB implemented by:[list][*]com.example.StatelessSampleEJBBean (Bean class)[*]com.example.StatelessSampleEJBHome (Home interface)[*]com.example.StatelessSampleEJB (Remote interface)[list]
    We then use the EJB Class Editor to add the createDepartment method to the remote interface of StatelessSampleEJB with the signature above. We edit the remote interface to make sure that it also reflects that the createDepartment method thows the AppException like this:
    package com.example;
    import javax.ejb.EJBObject;
    import java.rmi.RemoteException;
    public interface StatelessSampleEJB extends EJBObject {
      void createDepartment(int id, String name, String loc)
      throws RemoteException,AppException;
    }Before we start adding BC4J into the picture for our implementation, our StatelessSampleEJBBean class looks like this:
    package com.example;
    import javax.ejb.SessionBean;
    import javax.ejb.SessionContext;
    public class StatelessSampleEJBBean implements SessionBean {
      public void ejbCreate(){}
      public void ejbActivate(){}
      public void ejbPassivate(){}
      public void ejbRemove(){}
      public void setSessionContext(SessionContext ctx){
      public void createDepartment(int id, String name, String loc) 
      throws AppException {
        // TODO: Implement method here
    }We can double-click on the ejb-jar.xml file in our project to see the XML deployment descriptor for the bean we just created:
    <ejb-jar>
       <enterprise-beans>
          <session>
             <description>Session Bean ( Stateless )</description>
             <display-name>StatelessSampleEJB</display-name>
             <ejb-name>StatelessSampleEJB</ejb-name>
             <home>com.example.StatelessSampleEJBHome</home>
             <remote>com.example.StatelessSampleEJB</remote>
             <ejb-class>com.example.StatelessSampleEJBBean</ejb-class>
             <session-type>Stateless</session-type>
             <transaction-type>Container</transaction-type>
          </session>
       </enterprise-beans>
    </ejb-jar>We need to add the extra <assembly-descriptor> section in this file to indicate that the createDepartment method will require a transaction. After this edit, the ejb-jar.xml file looks like this:
    <ejb-jar>
       <enterprise-beans>
          <session>
             <description>Session Bean ( Stateless )</description>
             <display-name>StatelessSampleEJB</display-name>
             <ejb-name>StatelessSampleEJB</ejb-name>
             <home>com.example.StatelessSampleEJBHome</home>
             <remote>com.example.StatelessSampleEJB</remote>
             <ejb-class>com.example.StatelessSampleEJBBean</ejb-class>
             <session-type>Stateless</session-type>
             <transaction-type>Container</transaction-type>
          </session>
       </enterprise-beans>
       <assembly-descriptor>
          <container-transaction>
             <method>
                <ejb-name>StatelessSampleEJB</ejb-name>
                <method-name>createDepartment</method-name>
                <method-params>
                   <method-param>int</method-param>
                   <method-param>java.lang.String</method-param>
                   <method-param>java.lang.String</method-param>
                </method-params>
             </method>
             <trans-attribute>Required</trans-attribute>
          </container-transaction>
       </assembly-descriptor>
    </ejb-jar>
    Aggregating a BC4J Application Module
    With the EJB aspects of our bean setup, we can proceed to implementing the BC4J application module aggregation.
    The first thing we do is add private variables to hold the EJB SessionContext and the instance of the aggregated BC4J ApplicationModule, like this:
    // Place to hold onto the aggregated appmodule instance
    transient private ApplicationModule _am  = null;
    // Remember the SessionContext that the EJB container provides us
    private           SessionContext    _ctx = null;and we modify the default, empty implementation of the setSessionContext() method to remember the session context like this:
    public void setSessionContext(SessionContext ctx){ _ctx = ctx; }We add additional constants that hold the names of the J2EE datasource that we want BC4J to use, as well as the fully-qualified name of the BC4J application module that we'll be aggregating:
    // JNDI resource name for the J2EE datasource to use
    private static final String DATASOURCE = "jdbc/OracleCoreDS";
    // Fully-qualified BC4J application module name to aggregate
    private static final String APPMODNAME = "com.example.hr.HRApp";We expand the now-empty ejbCreate() and ejbRemove() methods to create and destory the aggregated instance of the BC4J application module that we'll use for the lifetime of the stateless session bean. When we're done, ejbCreate() it looks like this:
    public void ejbCreate() throws CreateException {
      try {
        // Setup a hashtable of environment parameters for JNDI initial context
        Hashtable env = new Hashtable();
        env.put(JboContext.INITIAL_CONTEXT_FACTORY,JboContext.JBO_CONTEXT_FACTORY);
        // NOTE: we want to use the BC4J app module in local mode as a simple Java class!
        env.put(JboContext.DEPLOY_PLATFORM, JboContext.PLATFORM_LOCAL);
        env.put(PropertyConstants.INTERNAL_CONNECTION_PARAMS,DATASOURCE);
        // Create an initial context, using this hashtable of environment params
        InitialContext ic = new InitialContext(env);
        // Lookup a home interface for the application module
        ApplicationModuleHome home = (ApplicationModuleHome)ic.lookup(APPMODNAME);
        // Using the home, create the instance of the appmodule we'll use
        _am = home.create();
        // Register the BC4J factory to handle EJB container-managed transactions
        registerContainerManagedTransactionHandlerFactory();
      catch(Exception ex) {
         ex.printStackTrace();
        throw new CreateException(ex.getMessage());
    }and ejbRemove() looks like this:
    public void ejbRemove() {
      try {
        // Cleanup any appmodule resources before getting shutdown
        _am.remove();
      catch(JboException ex) { /* Ignore */ }
    }The helper method named reigsterContainerManagedTransactionHandlerFactory() looks like this:
    private void registerContainerManagedTransactionHandlerFactory() {
      SessionImpl session = (SessionImpl)_am.getSession();
      session.setTransactionHandlerFactory(
        new TransactionHandlerFactory() {
          public TransactionHandler  createTransactionHandler() {
            return new ContainerManagedTxnHandlerImpl();
          public JTATransactionHandler createJTATransactionHandler() {
            return new ContainerManagedTxnHandlerImpl();
    }The last detail is to use the BC4J appmodule to implement the createDepartment() method. It ends up looking like this:
    public void createDepartment(int id, String name, String loc)
    throws AppException {
      try {
        // Connect the AM to the datasource we want to use for the duration
        // of this single method call.
        _am.getTransaction().connectToDataSource(null,DATASOURCE,false);
        // Use the "Departments" view object member of this AM
        ViewObject departments = _am.findViewObject("Departments");
        // Create a new row in this view object.
        Row newDept = departments.createRow();
        // Populate the attributes from the parameter arguments.
        newDept.setAttribute("Deptno", new Number(id));
        newDept.setAttribute("Dname", name);
        newDept.setAttribute("Loc", loc);
        // Add the new row to the view object's default rowset
        departments.insertRow(newDept);
        // Post all changes in the AM, but we don't commit them. The EJB
        // container managed transaction handles the commit.
        _am.getTransaction().postChanges();
      catch(JboException ex) {
        // To be good EJB Container-Managed Transaction "citizens" we have
        // to mark the transaction as needing a rollback if there are problems
        _ctx.setRollbackOnly();
        throw new AppException("Error creating dept "+ id +"\n"+ex.getMessage());
      finally {
        try {
          // Disconnect the AM from the datasource we're using
          _am.getTransaction().disconnect();
        catch(Exception ex) { /* Ignore */ }
    Building a Test Client
    With the EJB-Tier work done, we can build a sample client program to test this new stateless EJB Session Bean by selecting the bean in the Oracle9i JDeveloper IDE and choosing "Create Sample Java Client" from the right-mouse menu.
    When the "Sample EJB Client Details" dialog appears, we take the defaults of connecting to embedded OC4J container. Clicking the (OK) button generates the following test class:
    import java.util.Hashtable;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import com.example.StatelessSampleEJB;
    import com.example.StatelessSampleEJBHome;
    public class SampleStatelessSampleEJBClient {
      public static void main(String [] args) {
        SampleStatelessSampleEJBClient sampleStatelessSampleEJBClient =
           new SampleStatelessSampleEJBClient();
        try {
          Hashtable env = new Hashtable();
          env.put(Context.INITIAL_CONTEXT_FACTORY,
                  "com.evermind.server.rmi.RMIInitialContextFactory");
          env.put(Context.SECURITY_PRINCIPAL, "admin");
          env.put(Context.SECURITY_CREDENTIALS, "welcome");
          env.put(Context.PROVIDER_URL,
                  "ormi://localhost:23891/current-workspace-app");
          Context ctx = new InitialContext(env);
          StatelessSampleEJBHome statelessSampleEJBHome =
               (StatelessSampleEJBHome)ctx.lookup("StatelessSampleEJB");
          StatelessSampleEJB statelessSampleEJB;
          // Use one of the create() methods below to create a new instance
          // statelessSampleEJB = statelessSampleEJBHome.create();
          // Call any of the Remote methods below to access the EJB
          // statelessSampleEJB.createDepartment( int id, java.lang.String name, java.lang.String loc );
        catch(Throwable ex) {
          ex.printStackTrace();
    }We uncomment the call to the create() method and add a few calls to the createDepartment() method so that the body of the test program now looks like this:
    // Use one of the create() methods below to create a new instance
    statelessSampleEJB = statelessSampleEJBHome.create();
    // Call any of the Remote methods below to access the EJB
    statelessSampleEJB.createDepartment( 13, "Test1","Loc1");
    System.out.println("Created department 13");
    statelessSampleEJB.createDepartment( 14, "Test2","Loc2");
    System.out.println("Created department 14");
    try {
      // Try setting a department id that is too large!
      statelessSampleEJB.createDepartment( 23456, "Test3","Loc3");
    catch (AppException ax) {
      System.err.println("AppException: "+ax.getMessage());
    }Before we can successfully run our SampleStatelessSampleEJBClient we need to first run the EJB bean that the client will try to connect to. Since Oracle9i JDeveloper supports local running and debugging of the EJB-Tier without doing through a full J2EE deployment step, to accomplish this prerequisite step we just need to right-mouse on the StatelessSampleEJB node in the System Navigator and select "Run". This starts up the embedded OC4J instance and runs the EJB right out of the current out path.Finally, we can run the SampleStatelessSampleEJBClient, and see the output of the test program in the JDeveloper log window:
    Created department 13
    Created department 14
    AppException: Error creating dept 23456
    JBO-27010: Attribute set with value 23456 for Deptno in Dept has invalid precision/scale
    Troubleshooting
    One error that might arise while running the example is that the database connection information in your data-sources.xml for the jdbc/OracleCoreDS datasource does not correspond to the database you are trying to test against. If this happens, then double-check the file .\jdev\system\oc4j-config\data-sources.xml under the JDeveloper installation home directory to make sure that the url value provided is what you expect. For example, to work against a local Oracle database running on your current machine, listening on port 1521, with SID of ORCL, you would edit this file to have an entry like this for jdbc/OracleCoreDS :
    <data-source
        class="com.evermind.sql.DriverManagerDataSource"
        name="OracleDS"
        location="jdbc/OracleCoreDS"
        xa-location="jdbc/xa/OracleXADS"
        ejb-location="jdbc/OracleDS"
        connection-driver="oracle.jdbc.driver.OracleDriver"
        username="scott"
        password="tiger"
        url="jdbc:oracle:thin:@localhost:1521:ORCL"
        inactivity-timeout="30"
    />This is the data-sources.xml file that gets used by the embedded OC4J instance running in JDeveloper.
    Conclusion
    Hopefully this article has illustrated that it is straightforward to utilize the full power of BC4J in local mode as part of your EJB Stateless Session Beans using container-managed transaction. This example illustrated a single createDepartment method in the enterprise bean, but by replicating the application module interaction code that we've illustrated in createDepartment, any number of methods in your stateless session bean can use the aggregated application module instance created in the ejbCreate() method.
    Code Listing
    The full code listing for the SampleStatelessEJB bean implementation class looks like this:
    * StatelessSampleEJB
    * Illustrates how to use an aggregated BC4J application module
    * in local mode as part of the implementation of a stateless
    * EJB session bean using container-managed transaction.
    * HISTORY
    * smuench/dmutreja 14-FEB-2002 Created
    package com.example;
    import oracle.jbo.*;
    import oracle.jbo.server.*;
    import javax.ejb.*;
    import oracle.jbo.domain.Number;
    import oracle.jbo.common.PropertyConstants;
    import java.util.Hashtable;
    import javax.naming.InitialContext;
    import oracle.jbo.server.ejb.ContainerManagedTxnHandlerImpl;
    public class StatelessSampleEJBBean implements SessionBean {
      // JNDI resource name for the J2EE datasource to use
      private static final String DATASOURCE = "jdbc/OracleCoreDS";
      // Fully-qualified BC4J application module name to aggregate
      private static final String APPMODNAME = "com.example.hr.HRApp";
      // Place to hold onto the aggregated appmodule instance
      transient private ApplicationModule _am  = null;
      // Remember the SessionContext that the EJB container provides us
      private           SessionContext    _ctx = null;
      public void ejbCreate() throws CreateException {
        try {
          // Setup a hashtable of environment parameters for JNDI initial context
          Hashtable env = new Hashtable();
          env.put(JboContext.INITIAL_CONTEXT_FACTORY,JboContext.JBO_CONTEXT_FACTORY);
          env.put(JboContext.DEPLOY_PLATFORM, JboContext.PLATFORM_LOCAL);
          env.put(PropertyConstants.INTERNAL_CONNECTION_PARAMS,DATASOURCE);
          // Create an initial context, using this hashtable of environment params
          InitialContext ic = new InitialContext(env);
          // Lookup a home interface for the application module
          ApplicationModuleHome home = (ApplicationModuleHome)ic.lookup(APPMODNAME);
          // Using the home, create the instance of the appmodule we'll use
          _am = home.create();
          // Register the BC4J factory to handle EJB container-managed transactions
          registerContainerManagedTransactionHandlerFactory();
        catch(Exception ex) {
           ex.printStackTrace();
          throw new CreateException(ex.getMessage());
      public void ejbActivate(){}
      public void ejbPassivate(){}
      public void ejbRemove(){}
      public void setSessionContext(SessionContext ctx){ _ctx = ctx; }
      public void createDepartment(int id, String name, String loc)
      throws AppException {
        try {
          // Connect the AM to the datasource we want to use for the duration
          // of this single method call.
          _am.getTransaction().connectToDataSource(null,DATASOURCE,false);
          // Use the "Departments" view object member of this AM
          ViewObject departments = _am.findViewObject("Departments");
          // Create a new row in this view object.
          Row newDept = departments.createRow();
          // Populate the attributes from the parameter arguments.
          newDept.setAttribute("Deptno", new Number(id));
          newDept.setAttribute("Dname", name);
          newDept.setAttribute("Loc", loc);
          // Add the new row to the view object's default rowset
          departments.insertRow(newDept);
          // Post all changes in the AM, but we don't commit them. The EJB
          // container managed transaction handles the commit.
          _am.getTransaction().postChanges();
        catch(JboException ex) {
          // To be good EJB Container-Managed Transaction "citizens" we have
          // to mark the transaction as needing a rollback if there are problems
          _ctx.setRollbackOnly();
          throw new AppException("Error creating dept "+ id +\n"+ex.getMessage());
        finally {
          try {
            // Disconnect the AM from the datasource we're using
            _am.getTransaction().disconnect();
          catch(Exception ex) { /* Ignore */ }
      private void registerContainerManagedTransactionHandlerFactory() {
        SessionImpl session = (SessionImpl)_am.getSession();
        session.setTransactionHandlerFactory(
          new TransactionHandlerFactory() {
            public TransactionHandler createTransactionHandler() {
              return new ContainerManagedTxnHandlerImpl();
            public JTATransactionHandler createJTATransactionHandler() {
              return new ContainerManagedTxnHandlerImpl();

    Hi Steve, It4s me again;
    About the question I made, I tried with a single assembly-descriptor tag and a single container-transaction tag in the deployment descriptor of the session bean and these were the results.
    java.lang.NullPointerException
         void com.evermind.server.rmi.RMIConnection.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(java.lang.Throwable)
         java.lang.Object com.evermind.server.rmi.RMIConnection.invokeMethod(com.evermind.server.rmi.RMIContext, long, long, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.ejb.StatelessSessionRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         void __Proxy1.modificaEnvoltura(java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.String)
         void SamplemdeController.envolturaControlEJBClient.main(java.lang.String[])
    Then I tried with multiple assembly-descriptor tags each with a single container-transaction tag and the results were:
    java.lang.NullPointerException
         void com.evermind.server.rmi.RMIConnection.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(java.lang.Throwable)
         java.lang.Object com.evermind.server.rmi.RMIConnection.invokeMethod(com.evermind.server.rmi.RMIContext, long, long, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.ejb.StatelessSessionRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         void __Proxy1.modificaEnvoltura(java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.String)
         void SamplemdeController.envolturaControlEJBClient.main(java.lang.String[])
    Finally I tried with a single assembly-descriptor and multiple container tags and the results were:
    java.lang.NullPointerException
         void com.evermind.server.rmi.RMIConnection.EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER(java.lang.Throwable)
         java.lang.Object com.evermind.server.rmi.RMIConnection.invokeMethod(com.evermind.server.rmi.RMIContext, long, long, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.rmi.RecoverableRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         java.lang.Object com.evermind.server.ejb.StatelessSessionRemoteInvocationHandler.invoke(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
         void __Proxy1.modificaEnvoltura(java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.lang.String)
         void SamplemdeController.envolturaControlEJBClient.main(java.lang.String[])
    How can I make my Stateless Session bean work out?

  • Links No longer work for HowTo

    Hi,
    for the thread with the title:
    Thread: HOWTO: Implementing a ViewObject with Multiple Updateable Dependent Entity Objects
    HOWTO: Implementing a ViewObject with Multiple Updateable Dependent Entity Objects
    The links in the thread no longer seem to work. Could you provide the updated links?
    Thanks

    Are you following to the following link/reply?
    Steve Muench wrote:
    Please start a new thread with a new problem.
    The latest information on this topic is located in section "27.9 Creating a View Object with Multiple Updatable Entities" of the ADF Developer's Guide for Forms/4GL Developers on the ADF Learning Center at http://otn.oracle.com/products/adf/learnadf.html
    If yes, please see this link.
    27.9 Creating a View Object with Multiple Updatable Entities
    http://download.oracle.com/docs/cd/B31017_01/web.1013/b25947/bcadvvo009.htm
    Thanks,
    Hussein

  • HOWTO: Low DPC latencies ( 100 us) on bootcamped Macbooks (Pro)

    Here is a small HOWTO for getting the lowest possible DPC latencies (<100 us) on bootcamped Macbooks Pro (late 2008):
    Disclaimer: I did all tests on my late 2008 Macbook Pro Unibody 2.8 GHz model with NVidia chipset and graphic. Most of the following suggestions should apply to standard Macbook models and likely older generation as well.
    First of all Intel Speedstep can lead to dropouts and higher DPC latencies on small load! Unfortunately all tools that are supposed to manually switch Speedstep off don't seem to run on the late Macbooks (Pro) while on OS X you can use "Coolbook".
    Your only way to make sure your processor is clocked high enough and not dynamically switching is to put up a constant load (like running your DAW pretty hot or running Prime95 at "Idle/Lowest" process Priority in the background). I will keep investigating if I can find a tool to switch Speedstep off.
    Most importantly (to get rid of really bad DPC latency spikes):
    Kill the process "KBDMGR.EXE"!
    That's Apple's driver for controlling brightness and keyboard lighting via the function keys and setting tap options for the trackpad. It seems to have broken multithreading!
    You can also change the CPU affinity of KBDMGR.EXE to CPU1 (not CPU0!) which will help decreasing DPC Latencies alot, but there will still be Audio dropouts.
    Here's a small toolkit I put together that allows you to conviniently enable/disable Apple's "Boot Camp" tray application (KBDMGR.EXE) via an icon link and/or keyboard shortcut. Optionally it will switch the function of the F-Keys automatically for you depending on whether Boot Camp is loaded or not.
    Furthermore it automatically turns Boot Camp's CPU priority to "Idle" and CPU affinity to CPU1 in order to turn down the bug induced DPC Latencies and prevent dropouts with Windows sounds and Media Player playback. Professional Audio users will find that only turning off Boot Camp will allow low audio latency usage. Installation instructions are included in the README.TXT for your convinience.
    Boot CampED download page
    Direct Download:
    Boot CampED.zip - 3.3 kb
    Turn off the Broadcom 802.11N WLAN driver via Device-Manager or update to the latest drivers via Microsoft Update Catalog.
    Like on OS X the Airport module can lead to audio dropouts. The DPC Latencies produced by the Broadcom driver are less regular than the KBDMGR thing, alot higher in value. Best thing is to try for your own needs.
    Update:Meanwhile a new Broadcom drivers was published via Microsoft's Update Catalog named "Broadcom - Network - Broadcom 4322AG 802.11a/b/g/draft-n Wi-Fi Adapter " (4322 is the chip used). This one comes with both low DPC latencies and finally the ability to use the full rate upto 300 mbit/s. Go get it! For safety you might still want to turn WLAN off during critical audio work though.
    Change the graphic-card driver to "Standard VGA Driver" via Device-Manager or use RIVATUNER to enforce a fixed clock-rate and performance mode.
    Update:The dynamic clock-rate switching happening with NVidia drivers in order to save power and keep temperatures low leads to extreme DPC spikes for each switch and constantly high DPC latencies when it settles in low performance 2D mode. RIVATUNER's "Enforce Performance Mode" option can be used to set the card to a fixed clock-rate. I recommend using "Low Power 3D" for audio work.
    User of XP might think that they don't need this, but be aware that on XP the NVidia driver keeps running at highest clock-rates in "Performance 3D Mode" all the time. Via RIVATUNER you can switch to "Low Power 3D".
    Turn off the ACPI compliant Battery driver via Device-Manager
    This driver polls the battery for its current load status and produces a small, single, short spike exactly every 15 seconds. In my own tests I found that it doesn't seem to affect low latency audio performance. Furthermore turning it off will remove monitoring of your current battery status. But if you are running on power-chord anyway and want to make absolutely sure you can turn it off.
    All other devices don't add much if anything to DPC latencies, but can savely be turned off if you don't need them (like Nvidia LAN, Bluetooth, Onboard High Definition Audio).
    Attention: Removing the Battery while the power chord is connected results in permanently reduced CPU clock (downto the lowest clock setting possible). According to Apple this is done to prevent overloading the power-supply during heavy load as it needs the assistance of the battery from time to time.

    I'd like to underline that these are workaround. Now that the Broadcom drivers are fixed it is up to Apple to fix KBDMGR and to get the NVidia drivers fixed!
    Furthermore it seems as if only Vista 32-bit and OS X are heavily affected by Intel Speedstep, Vista 64-bit and Windows 7 (32/64) work alot better in this regard. XP is a mixed bag.
    Here are some screenshots to prove that the workarounds do help:
    DPC Latency before applying the workarounds:
    DPC Latency Vista 64-bit (Idle, Speedstep enabled) after applying the workarounds:
    DPC Latency Windows 7 64-bit (Idle: Speedstep enabled) after applying the workarounds:
    As you can see Vista's DPCs run well below 100 us once everything is optimized, Windows 7 is a bit worse, XP is even better. But practically you get the same results when using all three for professional Audio work.
    Message was edited by: T1mur

Maybe you are looking for