2011-12-29 19 views
2

ここでは何が欠けているのか理解できますか?
OTL 4ライブラリを使用してC++プログラムをコンパイルしようとしていますが、エラーが発生しています。OTLv4ライブラリを使用してC++コードをコンパイルできません

環境詳細:

  • 私はUbuntuの11.04 VM上でOracle DB XE 10Gをインストールしました。
  • SQL * Plusとサーバー自体が実行されている必要があります。

コンパイルコードです:

g++ -o <output>.exe <source>.cpp -I$ORACLE_HOME/rdbms/public -I$ORACLE_HOME/rdbms/demo -L$ORACLE_HOME/lib -lclntsh 

エラーです:エラーの

/usr/bin/ld: warning: libnnz10.so, needed by /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so, not found (try using -rpath or -rpath-link) 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nztSetAppDefaultLocation' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nzos_DisableClientAuthentication' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nzos_Create_Ctx' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `_intel_fast_memcpy' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nzgbllsm_location_shared_memory' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `__intel_cpu_indicator' 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nzosSCCS_SetCRLCacheSize' 
...a whole lot more undefined references... 
/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib/libclntsh.so: undefined reference to `nzssGSL_GetSecretLength' 
collect2: ld returned 1 exit status 

注:
私がチェックしたとき、私は私の$ORACLE_HOME/libディレクトリに見たとき、libnnz10.soが存在します。

答えて

2

私は数字にできましたそれは今日の午後から、コンパイルするようになった。
私はここソリューションですなかったように、ケースには、誰かが同じ問題でつまずき:

はあなたにもそうのようなあなたの.bashrcプロファイルにこれを追加することが便宜上あなたの$LD_LIBRARY_PATH

$ORACLE_HOME/libのパスを追加します。

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/bin 
export LD_LIBRARY_PATH 

これだけです!

PS:
私はこれ以前に投稿しようとしていたが、私はまだ8時間よりも早く自分の質問に答えるために、担当者ポイント
に欠けているように見えました。

0

なぜそれが必要なのかわかりませんが、コマンドに-lnnz10を追加してみてください。

(Googleは、余分な引数を使用している人々を示しているが、すぐに誰もが理由を説明する見ることができなかった。他のオプションは、LD_LIBRARYパスを設定したり、/etc/ld.so.conf$ORACLE_HOME/libを追加するように見える...)

関連する問題