g++ -shared -Wl,-soname,libFFTW.so -m64 -O2 -o lib/libFFTW.so fftw/src/TFFTComplex.o fftw/src/TFFTComplexReal.o fftw/src/TFFTRealComplex.o fftw/src/TFFTReal.o fftw/src/G__FFTW.o -L/usr/local/lib -lfftw3
/usr/lib64/gcc/x86_64-suse-linux/4.1.0/…/…/…/…/x86_64-suse-linux/bin/ld: /usr/local/lib/libfftw3.a(apiplan.o): relocation R_X86_64_32 against `a local symbol’ can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libfftw3.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [lib/libFFTW.so] Error 1
I’m compiling with --prefix=/usr/local and --enable-rootfit
As the error message says, you should recompile your libfftw3.a with
the option fPIC, otherwise you cannot mix the code with a shared library
expecting position independent code.
If you are not interested by fftw, do not specify this option when you configure
or install with
make -k
g++ -O2 -pipe -Wall -m64 -fPIC -Iinclude -pthread -DUSEPCH -include precompile.h -o geombuilder/src/TGeoGedFrame.o -c geombuilder/src/TGeoGedFrame.cxx
geombuilder/src/TGeoGedFrame.cxx:4:26: error: TGeoGedFrame.h: No such file or directory
include/TGeoTabManager.h:91: error: expected class-name before ‘{’ token
include/TGeoTabManager.h:99: error: ISO C++ forbids declaration of ‘TGTextButton’ with no type
include/TGeoTabManager.h:99: error: expected ‘;’ before ‘’ token
include/TGeoTabManager.h:104: error: expected )' before ‘*’ token include/TGeoTabManager.h:123: error: expected)’ before ‘’ token
include/TGeoTabManager.h:140: error: expected )' before ‘*’ token include/TGeoTabManager.h:157: error: expected)’ before ‘’ token
include/TGeoTabManager.h:174: error: expected )' before ‘*’ token include/TGeoTabManager.h:191: error: expected)’ before ‘’ token
include/TGeoTabManager.h:201: error: expected class-name before ‘{’ token
include/TGeoTabManager.h:207: error: ISO C++ forbids declaration of ‘TGTextButton’ with no type
include/TGeoTabManager.h:207: error: expected ‘;’ before ‘’ token
geombuilder/src/TGeoGedFrame.cxx:10: error: expected ‘,’ or ‘…’ before ‘’ token
geombuilder/src/TGeoGedFrame.cxx:10: error: ISO C++ forbids declaration of ‘TGeoGedFrame’ with no type
geombuilder/src/TGeoGedFrame.cxx:10: error: ‘TGeoGedFrame’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:10: error: expected primary-expression before ‘)’ token
geombuilder/src/TGeoGedFrame.cxx:13: error: ‘TGeoGedFrame’ has not been declared
geombuilder/src/TGeoGedFrame.cxx: In function ‘int TGeoGedFrame(const TGWindow*, Int_t, Int_t, UInt_t, Pixel_t)’:
geombuilder/src/TGeoGedFrame.cxx:14: error: only constructors take base initializers
geombuilder/src/TGeoGedFrame.cxx:19: error: ‘fTab’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:19: error: ‘fGedEditor’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:20: error: ‘fPad’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:21: error: ‘fTabMgr’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx: At global scope:
geombuilder/src/TGeoGedFrame.cxx:25: error: ‘TGeoGedFrame’ is not a class or namespace
geombuilder/src/TGeoGedFrame.cxx: In function ‘void SetActive(Bool_t)’:
geombuilder/src/TGeoGedFrame.cxx:30: error: ‘GetParent’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:30: error: invalid use of ‘this’ in non-member function
geombuilder/src/TGeoGedFrame.cxx:32: error: ‘GetParent’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:32: error: invalid use of ‘this’ in non-member function
geombuilder/src/TGeoGedFrame.cxx:38: error: ‘fTab’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx: At global scope:
geombuilder/src/TGeoGedFrame.cxx:45: error: ‘TGeoGedFrame’ is not a class or namespace
geombuilder/src/TGeoGedFrame.cxx: In function ‘void Update()’:
geombuilder/src/TGeoGedFrame.cxx:49: error: ‘fGedEditor’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx:52: error: ‘fPad’ was not declared in this scope
geombuilder/src/TGeoGedFrame.cxx: In function ‘int TGeoGedFrame(const TGWindow*, Int_t, Int_t, UInt_t, Pixel_t)’:
geombuilder/src/TGeoGedFrame.cxx:22: warning: control reaches end of non-void function
make: *** [geombuilder/src/TGeoGedFrame.o] Error 1