Installation/Compilation problems: Difference between revisions

From MidasWiki
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=== How to recover from a corrupted ODB ===
{{Pagelinks}}


* Stop your front-ends, mlogger, mhttpd, etc.
== Installation/Compilation Problems ==
* Remove the shared memory associated to ODB buffer. Find the shared memory segment by doing
 
  ls -l /dev/shm
=== SSL certificate errors ===
then remove the segment that will be something like /dev/shm/*_test_ODB_SHM
 
* Move the old ODB
At some sites you might get a SSL server certificate error during the git clone operation, like
cd online
 
  mv .ODB.SHM .ODB.SHM.BAD
<pre>
* Restart ODB with larger size
error: SSL certificate problem, verify that the CA cert is OK. Details:
odbedit -s 10000000
</pre>
* Reload the last saved ODB dump you have. These dumps are typically called something like 'online/history/*.xml'.
 
So from odbedit you do something like
This indicates that you don't have the proper certificate authority (CA) files installed on your computer. Possible solutions:
odbedit> load history/run00071.xml
 
* OK, now your ODB should be fixed.
* The easiest way out is to tell git to ignore the SSL verification with
 
<pre>
  git config --global http.sslVerify false
</pre>
 
* Set the environment variable GIT_SSL_NO_VERIFY=true.
* But the best solution is to just actually install the correct certificate authority files.
 
=== CERNLIB Errors ===
 
There are some older analyzer programs included in MIDAS that use PAW/HBOOK.  MIDAS will try to build these programs if you have the CERNLIB environment variable set.  This may cause errors trying to build mana.cxx, like
 
<pre>
gcc  -Dextname -DHAVE_HBOOK -c -g -O2 -Wall -Wno-strict-aliasing -Wuninitialized -Iinclude -Idrivers -I../mxml -I./mscb
-DHAVE_FTPLIB -D_LARGEFILE64_SOURCE -DHAVE_ROOT -pthread -m64 -I/usr/local/packages/root-5.32/include/root -DHAVE_ZLIB
-DHAVE_MSCB -DOS_LINUX -fPIC -Wno-unused-function -o linux/lib/hmana.o src/mana.cxx
src/mana.cxx: In function 'INT book_ntuples()':
src/mana.cxx:791: error: invalid conversion from 'const void*' to 'void*'
</pre>
 
Unless you care about this functionality, the easiest solution is to unset the environment variable CERNLIB before compiling.
 
=== MacOS 10.11 (El Capitan) openssl errors ===
 
Starting with version 10.11, MacOS has removed the openssl header files (they have been apparently deprecated for a while).    This causes a compiler error when trying to build the mongoose web server that MIDAS uses:
 
<pre>
gcc -c -g -O2 -Wall <snip> src/mongoose.c
src/mongoose.c:322:10: fatal error: 'openssl/ssl.h' file not found
#include <openssl/ssl.h>
</pre>
 
In order to fix this you need to install the openssl libraries using MacPorts.  If you haven't used MacPorts, the instructions would be
 
# Install MacPorts using [https://www.macports.org/install.php MacPorts Installation Guide]
# Install the openssl library
<pre>
sudo port install openssl
</pre>
Once you've done that the installation will work correctly.
 
 
[[Category:Installation]] [[Category:Troubleshooting]]

Latest revision as of 17:14, 20 November 2018


Installation/Compilation Problems

SSL certificate errors

At some sites you might get a SSL server certificate error during the git clone operation, like

error: SSL certificate problem, verify that the CA cert is OK. Details:

This indicates that you don't have the proper certificate authority (CA) files installed on your computer. Possible solutions:

  • The easiest way out is to tell git to ignore the SSL verification with
 git config --global http.sslVerify false
  • Set the environment variable GIT_SSL_NO_VERIFY=true.
  • But the best solution is to just actually install the correct certificate authority files.

CERNLIB Errors

There are some older analyzer programs included in MIDAS that use PAW/HBOOK. MIDAS will try to build these programs if you have the CERNLIB environment variable set. This may cause errors trying to build mana.cxx, like

gcc  -Dextname -DHAVE_HBOOK -c -g -O2 -Wall -Wno-strict-aliasing -Wuninitialized -Iinclude -Idrivers -I../mxml -I./mscb 
-DHAVE_FTPLIB -D_LARGEFILE64_SOURCE -DHAVE_ROOT -pthread -m64 -I/usr/local/packages/root-5.32/include/root -DHAVE_ZLIB 
-DHAVE_MSCB -DOS_LINUX -fPIC -Wno-unused-function -o linux/lib/hmana.o src/mana.cxx
src/mana.cxx: In function 'INT book_ntuples()':
src/mana.cxx:791: error: invalid conversion from 'const void*' to 'void*'

Unless you care about this functionality, the easiest solution is to unset the environment variable CERNLIB before compiling.

MacOS 10.11 (El Capitan) openssl errors

Starting with version 10.11, MacOS has removed the openssl header files (they have been apparently deprecated for a while). This causes a compiler error when trying to build the mongoose web server that MIDAS uses:

gcc  -c -g -O2 -Wall <snip> src/mongoose.c
src/mongoose.c:322:10: fatal error: 'openssl/ssl.h' file not found
#include <openssl/ssl.h>

In order to fix this you need to install the openssl libraries using MacPorts. If you haven't used MacPorts, the instructions would be

  1. Install MacPorts using MacPorts Installation Guide
  2. Install the openssl library
sudo port install openssl

Once you've done that the installation will work correctly.