title: Is libssl version 0.9.8e compatible with 0.9.7a?
body: <p>I'm using a third party static library in my C++ project that has a dependency on libssl version 0.9.7a. Due to various reasons, the libssl version that my project used is 0.9.8e.</p>
  
  <p>Everything was working fine, until the third party made a recent change to their static library. I wasn't able to successfully compile my application when it included this new version of the static library. The old version compiles fine.</p>
  
  <p>I'm not very familiar with these library dependencies and their backwards compatibility. We were told that we must use the version suggested by the third party. I just want to know if that is really the reason. IMO, I guess it should be backwards compatible, shouldn't it?</p>
  
  <p>Any direction with troubleshooting this issue is very much appreciated.</p>
  
  <p>The following is the compilation error that I'm getting:</p>
  
  <pre><code>cc1plus: note: obsolete option -I- used, please use -iquote instead
  
  In file included from /usr/include/openssl/e_os2.h:56,
                   from /usr/include/openssl/ssl.h:173,
                   from MyClass.cpp:28:
  
  /usr/include/openssl/opensslconf.h:13:30: error: opensslconf-i386.h: No such file or directory
  /usr/include/openssl/bn.h:288: error: expected ';' before '*' token
  /usr/include/openssl/bn.h:304: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:407: error: 'BN_ULONG' was not declared in this scope
  /usr/include/openssl/bn.h:450: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:451: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:452: error: 'BN_ULONG' has not been declared
  /usr/include/openssl/bn.h:453: error: 'BN_ULONG' has not been declared
  /usr/include/openssl/bn.h:454: error: 'BN_ULONG' has not been declared
  /usr/include/openssl/bn.h:455: error: 'BN_ULONG' has not been declared
  /usr/include/openssl/bn.h:456: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:471: error: 'BN_ULONG' has not been declared
  /usr/include/openssl/bn.h:764: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:765: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:766: error: variable or field 'bn_sqr_words' declared void
  /usr/include/openssl/bn.h:766: error: 'BN_ULONG' was not declared in this scope
  /usr/include/openssl/bn.h:766: error: 'rp' was not declared in this scope
  /usr/include/openssl/bn.h:766: error: expected primary-expression before 'const'
  /usr/include/openssl/bn.h:766: error: expected primary-expression before 'int'
  /usr/include/openssl/bn.h:767: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:768: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/bn.h:769: error: 'BN_ULONG' does not name a type
  /usr/include/openssl/ssl3.h:303: error: 'PQ_64BIT' does not name a type
  /usr/include/openssl/pqueue.h:73: error: 'PQ_64BIT' does not name a type
  /usr/include/openssl/pqueue.h:80: error: 'PQ_64BIT' was not declared in this scope
  /usr/include/openssl/pqueue.h:80: error: expected primary-expression before 'void'
  /usr/include/openssl/pqueue.h:89: error: 'PQ_64BIT' has not been declared
  /usr/include/openssl/dtls1.h:92: error: 'PQ_64BIT' does not name a type
  /usr/include/openssl/dtls1.h:94: error: 'PQ_64BIT' does not name a type
  </code></pre>
  
  <p>The error message says that there's no such file as opensslconf-i386.h, but it is indeed present.</p>
  
  <p>Any idea what's going wrong?</p>
  
  <p>Thanks for you time!</p>