#64 Cannot compile staden-1-6-0 on linux-x86


I tried to compile staden from scratch and have hit a

src # make -f Makefile.thirdparty
gzip -cd libpng-1.2.7.tar.gz | tar xf -
ln -s libpng-1.2.7 libpng
touch libpng-1.2.7/.unpacked
(cd libpng-1.2.7; make -f scripts/makefile.gcc clean)
make[1]: Entering directory
rm -f *.o libpng.a pngtest pngout.png
make[1]: Leaving directory
cd libpng-1.2.7; \ make -f scripts/makefile.gcc
ZLIBINC=../zlib-1.2.2 ZLIBLIB=../zlib-1.2.2
make[1]: Entering directory
gcc -I../zlib-1.2.2 -Wall -O2 -c -o png.o png.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngerror.o pngerror.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngget.o pngget.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngmem.o pngmem.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngpread.o pngpread.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngread.o pngread.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngrio.o pngrio.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngrtran.o pngrtran.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngrutil.o pngrutil.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngset.o pngset.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngtrans.o pngtrans.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngwio.o pngwio.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngwrite.o pngwrite.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngwtran.o pngwtran.c
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngwutil.o pngwutil.c
ar rcs libpng.a png.o pngerror.o pngget.o pngmem.o
pngpread.o pngread.o pngrio.o pngrtran.o pngrutil.o
pngset.o pngtrans.o pngwio.o pngwrite.o pngwtran.o
ranlib libpng.a
gcc -I../zlib-1.2.2 -Wall -O2 -c -o pngtest.o pngtest.c
gcc -o pngtest pngtest.o -L. -L../zlib-1.2.2 -lpng -lz
-lm -s
make[1]: Leaving directory
touch libpng-1.2.7/.built-
cp -R libpng-1.2.7/libpng12.so* lib/-binaries
cp: cannot stat `libpng-1.2.7/libpng12.so*': No such
file or directory
make: *** [lib/-binaries/.png] Error 1

Please note I have the static library instead of
dynamic one.


  • James Bonfield

    James Bonfield - 2007-03-12

    Logged In: YES
    Originator: NO

    The missing machine type in "cp -R libpng-1.2.7/libpng12.so* lib/-binaries" (/-binaries ?) suggests that you haven't set your MACHINE environment variable. This is done by staden.login or staden.profile, so try setting STADENROOT and sourcing the appropriate login setup for your shell first. The Makefile.thirdparty uses this to work out which makefile stub to use for libpng as I recall.

  • Nobody/Anonymous

    Logged In: NO

    Hi James,
    thank you for your answer. It is a pitty the Makefile requires the headers and libs to be installed locally. Could that be made a bit more robust to pick up also headers from /usr/include and libs from /usr/lib at least, if not also from /usr/local prefix?

    $ make 2>&1 | tee make.out
    cd src; make all
    make[1]: Entering directory `/home/mmokrejs/bioinformatics/software/staden/staden-src-1-7-0/src'
    Makefile:75: warning: overriding commands for target `clean'
    mk/global.mk:256: warning: ignoring old commands for target `clean'
    Makefile:90: warning: overriding commands for target `depend'
    mk/global.mk:515: warning: ignoring old commands for target `depend'
    Makefile:144: warning: overriding commands for target `distsrc'
    mk/global.mk:494: warning: ignoring old commands for target `distsrc'
    cd Misc && make -w all
    make[2]: Entering directory `/home/mmokrejs/bioinformatics/software/staden/staden-src-1-7-0/src/Misc'
    touch linux-binaries/.dir
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/crash.o -c crash.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/date.o -c date.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/filenames.o -c filenames.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/files.o -c files.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/find.o -c find.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/shell.o -c shell.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/strings.o -c strings.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/usleep.o -c usleep.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/error.o -c error.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/xerror.o -c xerror.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/xalloc.o -c xalloc.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/vlen.o -c vlen.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/FtoC.o -c FtoC.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/getfile.o -c getfile.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/bitmap.o -c bitmap.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/array.o -c array.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/locks.o -c locks.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/array_arith.o -c array_arith.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/parse_db.o -c parse_db.c
    gcc -g -DUSE_NON_CONST -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -o linux-binaries/dstring.o -c dstring.c
    touch ../lib/linux-binaries/.dir
    cc -L../lib/linux-binaries -shared -o ../lib/linux-binaries/libmisc.so linux-binaries/crash.o linux-binaries/date.o linux-binaries/filenames.o linux-binaries/files.o linux-binaries/find.o linux-binaries/shell.o linux-binaries/strings.o linux-binaries/usleep.o linux-binaries/error.o linux-binaries/xerror.o linux-binaries/xalloc.o linux-binaries/vlen.o linux-binaries/FtoC.o linux-binaries/getfile.o linux-binaries/bitmap.o linux-binaries/array.o linux-binaries/locks.o linux-binaries/array_arith.o linux-binaries/parse_db.o linux-binaries/dstring.o -lm
    make[2]: Leaving directory `/home/mmokrejs/bioinformatics/software/staden/staden-src-1-7-0/src/Misc'
    cd io_lib && make -w all
    make[2]: Entering directory `/home/mmokrejs/bioinformatics/software/staden/staden-src-1-7-0/src/io_lib'
    Makefile:172: warning: overriding commands for target `distsrc'
    ../mk/global.mk:494: warning: ignoring old commands for target `distsrc'
    Makefile:202: warning: overriding commands for target `depend'
    ../mk/global.mk:515: warning: ignoring old commands for target `depend'
    cd include; \ for i in abi alf ctf exp_file plain read scf sff utils ztr; \ do \ ln -s ../$i/*.h .;\ done
    touch include/.links
    make[2]: [read/linux-binaries/.dir] Error 1 (ignored)
    touch read/linux-binaries/.dir
    make[2]: [utils/linux-binaries/.dir] Error 1 (ignored)
    touch utils/linux-binaries/.dir
    make[2]: [abi/linux-binaries/.dir] Error 1 (ignored)
    touch abi/linux-binaries/.dir
    make[2]: [alf/linux-binaries/.dir] Error 1 (ignored)
    touch alf/linux-binaries/.dir
    make[2]: [ctf/linux-binaries/.dir] Error 1 (ignored)
    touch ctf/linux-binaries/.dir
    make[2]: [exp_file/linux-binaries/.dir] Error 1 (ignored)
    touch exp_file/linux-binaries/.dir
    make[2]: [plain/linux-binaries/.dir] Error 1 (ignored)
    touch plain/linux-binaries/.dir
    make[2]: [progs/linux-binaries/.dir] Error 1 (ignored)
    touch progs/linux-binaries/.dir
    make[2]: [scf/linux-binaries/.dir] Error 1 (ignored)
    touch scf/linux-binaries/.dir
    make[2]: [ztr/linux-binaries/.dir] Error 1 (ignored)
    touch ztr/linux-binaries/.dir
    touch sff/linux-binaries/.dir
    make[2]: [read/linux-binaries/Read.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o read/linux-binaries/Read.o -c read/linux-binaries/../Read.c
    make[2]: [read/linux-binaries/translate.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o read/linux-binaries/translate.o -c read/linux-binaries/../translate.c
    make[2]: [read/linux-binaries/scf_extras.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o read/linux-binaries/scf_extras.o -c read/linux-binaries/../scf_extras.c
    make[2]: [utils/linux-binaries/find.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o utils/linux-binaries/find.o -c utils/linux-binaries/../find.c
    make[2]: [utils/linux-binaries/mach-io.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o utils/linux-binaries/mach-io.o -c utils/linux-binaries/../mach-io.c
    make[2]: [utils/linux-binaries/traceType.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o utils/linux-binaries/traceType.o -c utils/linux-binaries/../traceType.c
    make[2]: [utils/linux-binaries/read_alloc.o] Error 1 (ignored)
    gcc -g -DUSE_NON_CONST -DIOLIB_SCF -DIOLIB_EXP -DIOLIB_PLN -DIOLIB_ABI -DIOLIB_ALF -DIOLIB_CTF -DIOLIB_ZTR -DIOLIB_SFF -Iinclude -I. -I../Misc -Wimplicit -Wreturn-type -Wunused -Wswitch -Wcomment -Wformat -Wstrict-prototypes -D_FILE_OFFSET_BITS=64 -fpic -I../zlib -DHAVE_LIBCURL -o utils/linux-binaries/read_alloc.o -c utils/linux-binaries/../read_alloc.c
    make[2]: *** No rule to make target `../zlib/zlib.h', needed by `utils/linux-binaries/compress.o'. Stop.
    make[2]: Leaving directory `/home/mmokrejs/bioinformatics/software/staden/staden-src-1-7-0/src/io_lib'
    make[1]: *** [io_lib] Error 2

    For inspiration why people rather use binary package see http://bugs.gentoo.org/show_bug.cgi?id=120446 ;-)

  • Martin Mokrejs

    Martin Mokrejs - 2009-02-23

    Hi James,
    I am trying to compile staden-1.7.0 from scratch on my linux box. My intent is to rip-out the necessity to compile under the staden tree all the third-party libs.

    I believe there are some old values forgotten in the Makefiles:

    I see existing ./src/tk8.4.0/generic/tkInt.h but src/Makefile refers to tk8.4.6.

    There is a missing file doc/manual/init_tar.1.texi called by doc/manual/manpages-t.texi:

    m4:manpages-t.texi:79: cannot open `init_tar.1.texi': No such file or directory

    The staden.login and staden.profile set STADENROOT_1_6 variable. Shouldn't that be changed for 1.7 version?

    I will attach a patch for all my changes. In the end I did manage to get it compiled from sources using system-wide installed 3rd party libs. However, stash is dumping core on my system, maybe because I have Tcl/Tk 8.4.0 or because of io_lib-

    Note to others who would like to jump in here are some useful commands:

    $ SRCROOT=`pwd` STADENROOT=/usr/local/staden MACHINE=linux make clean
    $ SRCROOT=`pwd` STADENROOT=/usr/local/staden MACHINE=linux make depend
    $ SRCROOT=`pwd` STADENROOT=/usr/local/staden MACHINE=linux make
    File Added: staden-src-1-7-0.patch


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks