チケット #34798

mrcImageCTFCompensation

登録: 2015-01-13 17:25 最終更新: 2015-01-16 07:11

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし
投票
点数: 0
No votes
0.0% (0/0)
0.0% (0/0)

詳細

【問題内容】
mrcImageCTFCompensation実行時にオプション-info2を使用するとセグメンテーションエラーが発生します。

【エラー箇所】
(ファイル名)
/Eos/src/Tools/mrcImage/mrcImageCTFCompensation/src/mrcImageCTFCompensation.c

68行目付近にてエラーとなっているようです。
ctfInfoRead(fpt, &CTFInfo, "", 0);


(ファイル名)
/Eos/src/Objects/DataManip/ctfInfo/src/ctfInfoRead.c

37行目付近にてheadlabelがnullになっており、次の行で使用しているためにエラーとなっているようです。
headlabel = strdup(label);


【補足】
他にもmatrix3DFromEulerAngleなどstrdupを使用している関数でもエラーが発生しました。


現在で登録すべきライブラリが足りていないのでしょうか。


【追記】
経過報告です。
Eos/src/Objects/DataManip/ctfInfoにてmakeをしましたところ下記のようなワーニングが出ていました。

/Eos/src/Objects/DataManip/ctfInfo/src/ctfInfoRead.c:36:16: warning: implicit declaration of
      function 'strdup' is invalid in C99 [-Wimplicit-function-declaration]
                        headlabel = strdup(label);

「C99においてstrdupが無効です」という意味かと思いますが、こちらが問題になっているかはまだ分かりません。

【追記】
makeの途中で下記のようなリンクエラーが起きていました。

gcc --std=gnu99 -shared -L/Users/teppeikinoshita/Eos/lib/X86MAC64/ -L/Users/teppeikinoshita/Eos/util/X86MAC64/lib/ruby/1.9.1/x86_64-darwin13.2.0 -o libctfInfo.so ctfDeterminationFromPhaseComparison.sharedo ctfFunction.sharedo ctfInfoPVM.sharedo ctfInfoRead.sharedo ctfInfoWrite.sharedo ctfInfoWrite2.sharedo ctfWeight.sharedo ctfZeroPoint.sharedo lastigmatismDetection.sharedo lctfDetermination.sharedo lctfDetermine.sharedo lmolecularEnvelope.sharedo lmrcFSInfoScatteringAngularDistributionAverageSection.sharedo powerspectraTangentLine.sharedo thonRing.sharedo
Undefined symbols for architecture x86_64:
  "_fileLineNumberGet2", referenced from:
      _lmolecularEnvelopeFileRead in lmolecularEnvelope.sharedo

-中略-

  "_vector", referenced from:
      _lctfDeterminationbyFittingMethods in lctfDetermination.sharedo
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: [libctfInfo.so] Error 1 (ignored)

チケットの履歴 (5 件中 3 件表示)

2015-01-13 17:25 更新者: kinoshita-eos
  • 新しいチケット "mrcImageCTFCompensation" が作成されました
2015-01-14 09:37 更新者: kinoshita-eos
  • コンポーネントEospedia更新 から base-v2.0 に更新されました
2015-01-14 16:32 更新者: kinoshita-eos
  • 詳細が更新されました
2015-01-14 17:19 更新者: kinoshita-eos
  • 詳細が更新されました
2015-01-16 07:11 更新者: tacyas
  • マイルストーン(未割り当て) から 画像処理法の機能追加 に更新されました
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2015-01-16 07:11 に更新されました
コメント

OS-Xにおいて、strdupはinline関数になっています。strcmpの警告文に対して、inlineをはずすようにccのオプションを変更したために生じたことです。それ以外では問題が生じていませんでした。コンパイルオプションを元に戻しました。これで終了しています。

添付ファイルリスト

添付ファイルはありません

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする