アプリケーション

Makefile メモ

デバッグメモ

include ファイルと lib ファイルのバージョンが違う場合

  • Include する root のバージョンが違うと、以下のようなメッセージが出た。
     [koba@kr h2root_smp_on_kr]$ ./h2root
    center -600.000000
    Error in <TUnixSystem::DynamicPathName>: FFTW[.so | .dll | .dylib | .sl | .dl | .a] does not exist in /home/koba/cern/root_v5.34.36/lib/root:/home/koba/cern/root_v5.32.04/lib/root:/root:/home/koba/cern/root_v5.32.04/lib/root:/home/koba/cern/anaroot_v4.5.15/anaroot/lib:/home/koba/cern/anaroot_v4.5.15/anaroot/lib:.:/home/koba/cern/root_v5.34.36/lib/root::/home/koba/cern/root_v5.34.36/lib/root/cint/cint/stl
    Error in <TVirtualFFT::FFT>: handler not found
    *** glibc detected *** ./h2root: corrupted double-linked list: 0x000000000275a570 ***
    ======= Backtrace: =========
    /lib64/libc.so.6[0x33ef075dee]
    /lib64/libc.so.6[0x33ef078ff6]
    /lib64/libc.so.6(exit+0x115)[0x33ef0359c5]
    /lib64/libc.so.6(__libc_start_main+0x104)[0x33ef01ed24]
    ./h2root[0x400889]
    ======= Memory map: ========
    00400000-00401000 r-xp 00000000 fd:02 6838699                            /home/koba/Dropbox/works/root/h2root_smp_on_kr/h2root
  • h2root.cc
    #include <stdio.h>
    #include "TH1.h"
    int main(int argc, char **argv)
    {
       TH1F *h1;
       h1 = new TH1F("aa","aa",1200,-600.,600.);
       printf("center %f\n",h1->GetBinCenter(10));
       h1->Fill(1.0,1.0);
       return 0;
    }
  • Makefile
    TARGETS   = h2root
    ROOTCFLAGS = -O2 -pipe -m64 -Wshadow -Wall -W -Woverloaded-virtual -fPIC -I/home/koba/cern/root_v5.32.04/root/include -DR__HAVE_CONFIG     -pthread 
    ROOTLFLAGS  = -m64 -O2  -Wl,--no-undefined -Wl,--as-needed
    ROOTLIBS  = -L/home/koba/cern/root_v5.34.36/lib/root -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -pthread -lm -ldl -rdynamic /home/koba/cern/root_v5.34.36/lib/root/libminicern.so /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgfortran.so /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgfortranbegin.a
    
    all:	$(TARGETS)
    h2root: h2root.o
    	g++ $(ROOTLFLAGS) -o $@ $< $(ROOTLIBS)
    .cc.o:
    	g++ $(ROOTCFLAGS) -c $<
    .PHONY : clean
    clean:
    	rm -rf *.o
softwares/root/app.txt · 最終更新: 2018/01/27 15:32 by kobayash
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0