⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hpux.so

📁 berkeley db 4.6.21的源码。berkeley db是一个简单的数据库管理系统
💻 SO
字号:
m4_comment([$Id: hpux.so,v 11.17 2004/08/13 03:38:59 bostic Exp $])m4_ref_title(Building m4_db for UNIX/POSIX systems,    HP-UX, @HP-UX, build_unix/freebsd, build_unix/irix)m4_nlistbeginm4_nlist([dnlm4_bold([I can't specify the m4_ref(DB_SYSTEM_MEM) flag to m4_ref(dbenv_open).])m4_p([dnlThe m4_manref(shmget, 2) interfaces are not always used on HP-UX, eventhough they exist, because anonymous memory allocated using m4_manref(shmget, 2)cannot be used to store the standard HP-UX msemaphore semaphores.  Forthis reason, it may not be possible to specify the m4_ref(DB_SYSTEM_MEM)flag on some versions of HP-UX.  (We have seen this problem only on HP-UX10.XX, so the simplest workaround may be to upgrade your HP-UX release.)])])m4_hlm4_nlist([dnlm4_bold([I can't specify both the m4_ref(DB_PRIVATE) and m4_ref(DB_THREAD)flags to m4_ref(dbenv_open).])m4_p([dnlIt is not possible to store the standard HP-UX msemaphore semaphores inmemory returned by m4_manref(malloc, 3) in some versions of HP-UX.  Forthis reason, it may not be possible to specify both them4_ref(DB_PRIVATE) and m4_ref(DB_THREAD) flags on some versions ofHP-UX.  (We have seen this problem only on HP-UX 10.XX, so the simplestworkaround may be to upgrade your HP-UX release.)])])m4_hlm4_nlist([dnlm4_bold([I can't compile and run multithreaded applications.])m4_p([dnlSpecial compile-time flags are required when compiling threadedapplications on HP-UX.  If you are compiling a threaded application, youmust compile with the _REENTRANT flag:])m4_indent([cc -D_REENTRANT ...])m4_p([dnlThe m4_db library will automatically build with the correct options.])])m4_hlm4_nlist([dnlm4_bold([An ENOMEM error is returned from m4_ref(dbenv_open) orm4_ref(dbenv_remove).])m4_p([dnlDue to the constraints of the PA-RISC memory architecture, HP-UX does notallow a process to map a file into its address space multiple times.For this reason, each m4_db environment may be opened only once by aprocess on HP-UX; that is, calls to m4_ref(dbenv_open) will fail if thespecified m4_db environment has been opened and not subsequently closed.])])m4_hlm4_nlist([dnlm4_bold([When compiling with gcc, I see the following error:m4_indent([dnl#error "Large Files (ILP32) not supported in strict ANSI mode."])])m4_p([dnlWe believe this is an error in the HP-UX include files, but we don'treally understand it.  The only workaround we have found is to add-D__STDC_EXT__ to the C preprocessor defines as part of compilation.])])m4_hlm4_nlist([dnlm4_bold([When using the Tcl or Perl APIs (including running the testsuite), I see the error "Can't shl_load() a library containing ThreadLocal Storage".])m4_p([dnlThis problem happens when HP-UX has been configured to use pthread mutexlocking, and an attempt is made to call m4_db using the Tcl or Perl APIs.We have never found any way to fix this problem as part of the m4_dbbuild process.  To work around the problem, rebuild tclsh or Perl, andmodify its build process to explicitly link it against the HP-UX pthreadlibrary (currently /usr/lib/libpthread.a).])])m4_hlm4_nlist([dnlm4_bold([When running an executable that has been dynamically linkedagainst the m4_db library, I see the error "Can't find path for sharedlibrary" even though I correctly set the SHLIB_PATH environment variable.])m4_p([dnlBy default, some versions of HP-UX ignore the dynamic library searchpath specified by the SHLIB_PATH environment variable.  To work aroundthis, specify the "+s" flag to ld when linking, or run the followingcommand on the executable that is not working:])m4_indent([chatr +s enable -l /full/path/to/libdb-3.2.sl ...])])m4_hlm4_nlist([dnlm4_bold([I see errors about "open64" when building m4_db applications.])m4_p([dnlSystem include files (most commonly fcntl.h) in some releases of AIX,HP-UX and Solaris redefine "open" when large-file support is enabled forapplications.  This causes problems when compiling applications because"open" is a method in the m4_db APIs.  To work around this problem:m4_nlistbeginm4_nlist([dnlAvoid including the problematical system include files in source codefiles which also include m4_db include files and call into the m4_dbAPI.])m4_nlistns([dnlBefore building m4_db, modify the generated include file db.h to itselfinclude the problematical system include files.])m4_nlistns([dnlTurn off m4_db large-file support by specifying them4_linkpage(M4RELDIR/ref/build_unix/conf, --disable-largefile,--disable-largefile) configuration option and rebuilding.])m4_nlistend])])m4_nlistendm4_page_footer

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -