Configure Errors While Trying to Compile binutils - makefile

I'm trying to build a cross-compiler, but for some reason binutils is failing to compile. When I run make all, this is what I get after a while:
loading cache .././config.cache
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether to install libbfd... no
checking for executable suffix... (cached) .dSYM
checking for gcc... (cached) /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2
checking whether the C compiler (/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -g -O2 ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
make: * [configure-opcodes] Error 1
Looking at the config.log this is what I got:
configure:565: checking for Cygwin environment
configure:598: checking for mingw32 environment
configure:675: checking host system type
configure:696: checking target system type
configure:714: checking build system type
configure:739: checking for gcc
configure:852: checking whether the C compiler (/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -g -O2 ) works
configure:868: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -o conftest -g -O2 conftest.c 1>&5
configure:894: checking whether the C compiler (/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -g -O2 ) is a cross-compiler
configure:899: checking whether we are using GNU C
configure:927: checking whether /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 accepts -g
configure:959: checking for POSIXized ISC
configure:997: checking for a BSD compatible install
configure:1050: checking whether build environment is sane
configure:1107: checking whether make sets ${MAKE}
configure:1153: checking for working aclocal
configure:1166: checking for working autoconf
configure:1179: checking for working automake
configure:1192: checking for working autoheader
configure:1205: checking for working makeinfo
configure:1228: checking for ar
configure:1260: checking for ranlib
configure:1407: checking for ld used by GCC
configure:1475: checking if the linker (/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2) is GNU ld
configure:1492: checking for /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 option to reload object files
configure:1504: checking for BSD-compatible nm
configure:1542: checking whether ln -s works
configure:1563: checking how to recognise dependant libraries
configure:1736: checking for object suffix
configure:1762: checking for executable suffix
configure:1932: checking for ranlib
configure:1999: checking for strip
ltconfig:678:checking for /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 option to produce PIC
ltconfig:687:checking that /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 PIC flag -fPIC -DPIC works.
ltconfig:749: checking if /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 static flag works
ltconfig:780: finding the maximum length of command line arguments
ltconfig:#lineno#: result: 98305
ltconfig:887: checking if /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 supports -fno-rtti -fno-exceptions
ltconfig:888: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -c -g -O2 -fno-rtti -fno-exceptions -c conftest.c conftest.c 1>&5
ltconfig:1431: checking if global_symbol_pipe works
ltconfig:1432: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -c -g -O2 conftest.c 1>&5
ltconfig:1435: eval "nm conftest.o | sed -n -e 's/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[ ][ ]*\(\)\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2\3 \3/p' > conftest.nm"
cannot find nm_test_var in conftest.nm
ltconfig:1431: checking if global_symbol_pipe works
ltconfig:1432: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -c -g -O2 conftest.c 1>&5
ltconfig:1435: eval "nm conftest.o | sed -n -e 's/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[ ][ ]*\(_\)\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2\3 \3/p' > conftest.nm"
ltconfig:1487: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -o conftest -g -O2 -fno-builtin conftest.c conftstm.o 1>&5
configure:2338: checking whether to enable maintainer-specific portions of Makefiles
configure:2361: checking whether to install libbfd
configure:2398: checking for executable suffix
configure:2434: checking for gcc
configure:2547: checking whether the C compiler (/usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -g -O2 ) works
configure:2563: /usr/local/Cellar/apple-gcc42/4.2.1-5666.3/bin/gcc-4.2 -o conftest.dSYM -g -O2 conftest.c 1>&5
ld: can't open output file for writing: conftest.dSYM, errno=21 for architecture x86_64
collect2: ld returned 1 exit status
configure: failed program was:
#line 2558 "configure"
#include "confdefs.h"
main(){return(0);}
What should I do to correct this?

Related

make error when installing instrument-control package for octave

I'm running Octave 4.0.3 on OSX 10.10.5. When I try to install the instrument-control package using:
>> pkg install -forge instrument-control -verbose
I get the following error:
clang: warning: argument unused during compilation: '-pthread'
rm __gpib_trigger__.o gpib_write.o gpib_read.o __gpib_spoll__.o gpib.o __gpib_clrdevice__.o gpib_timeout.o gpib_close.o
pkg: error running `make' for the instrument-control package.
error: called from 'configure_make' in file /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/share/octave/4.0.3/m/pkg/private/configure_make.m near line 96, column 9
There are a pile of warnings during the build, but they're all for ignored options during compile.
I have successfully installed other packages (control, signal). Could this be a compatibility issue? Ultimately, I need to communicate to a serial device using octave.
Updates:
A student tried the same using Octave 3.8.0 and I tried it with 4.2.0 with the same results.
I tried with -verbose and there doesn't seem to be any more information. There are a bunch of warnings for unused options, but nothing in the (pages of) output that indicate any hints. At the top, I get:
>> pkg install -forge instrument-control -verbose
mkdir (/var/tmp/oct-hJRcYn)
untar (/Users/greg/instrument-control-0.3.0.tar.gz, /var/tmp/oct-hJRcYn)
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking for mkoctfile... /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose
checking for grep that handles long lines and -e... /usr/bin/grep
checking whether install_signal_handlers is in the octave namespace... no
checking whether set_signal_handler is in the octave namespace... no
checking for windows... no
checking how to run the C++ preprocessor... clang++ -E
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/i2c-dev.h usability... no
checking linux/i2c-dev.h presence... no
checking for linux/i2c-dev.h... no
checking dev/iicbus/iic.h usability... no
checking dev/iicbus/iic.h presence... no
checking for dev/iicbus/iic.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking linux/parport.h usability... no
checking linux/parport.h presence... no
checking for linux/parport.h... no
checking linux/ppdev.h usability... no
checking linux/ppdev.h presence... no
checking for linux/ppdev.h... no
checking dev/ppbus/ppi.h usability... no
checking dev/ppbus/ppi.h presence... no
checking for dev/ppbus/ppi.h... no
checking dev/ppbus/ppbconf.h usability... no
checking dev/ppbus/ppbconf.h presence... no
checking for dev/ppbus/ppbconf.h... no
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking for library containing getnameinfo... none required
checking gpib/ib.h usability... no
checking gpib/ib.h presence... no
checking for gpib/ib.h... no
checking for rpcgen... yes
checking for library containing clnt_create... none required
checking rpc/rpc.h usability... yes
checking rpc/rpc.h presence... yes
checking for rpc/rpc.h... yes
checking visa/visa.h usability... no
checking visa/visa.h presence... no
checking for visa/visa.h... no
configure: creating ./config.status
config.status: creating octave-wrappers.h
config.status: creating Makefile
config.status: creating gpib/Makefile
config.status: creating tcp/Makefile
config.status: creating udp/Makefile
config.status: creating vxi11/Makefile
config.status: creating usbtmc/Makefile
config.status: creating serial/Makefile
config.status: creating parallel/Makefile
config.status: creating i2c/Makefile
config.status: creating resolvehost/Makefile
config.status: creating config.h
which seems to indicate I have the tools I need. The relevant lines from configure_make are:
if (exist (fullfile (src, "Makefile"), "file"))
[status, output] = shell (sprintf ("%s make --jobs %i --directory '%s'",
scenv, jobs, src), verbose);
if (status != 0)
rmdir (desc.dir, "s");
disp (output);
error ("pkg: error running `make' for the %s package.", desc.name);
endif
endif
Complete output of the command:
pkg install -forge instrument-control -verbose
mkdir (/var/tmp/oct-DzBx8a)
untar (/Users/greg/Dropbox/octave/instrument-control-0.3.0.tar.gz, /var/tmp/oct-DzBx8a)
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking for mkoctfile... /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose
checking for grep that handles long lines and -e... /usr/bin/grep
checking whether install_signal_handlers is in the octave namespace... no
checking whether set_signal_handler is in the octave namespace... no
checking for windows... no
checking how to run the C++ preprocessor... clang++ -E
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/i2c-dev.h usability... no
checking linux/i2c-dev.h presence... no
checking for linux/i2c-dev.h... no
checking dev/iicbus/iic.h usability... no
checking dev/iicbus/iic.h presence... no
checking for dev/iicbus/iic.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking linux/parport.h usability... no
checking linux/parport.h presence... no
checking for linux/parport.h... no
checking linux/ppdev.h usability... no
checking linux/ppdev.h presence... no
checking for linux/ppdev.h... no
checking dev/ppbus/ppi.h usability... no
checking dev/ppbus/ppi.h presence... no
checking for dev/ppbus/ppi.h... no
checking dev/ppbus/ppbconf.h usability... no
checking dev/ppbus/ppbconf.h presence... no
checking for dev/ppbus/ppbconf.h... no
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking for library containing getnameinfo... none required
checking gpib/ib.h usability... no
checking gpib/ib.h presence... no
checking for gpib/ib.h... no
checking for rpcgen... yes
checking for library containing clnt_create... none required
checking rpc/rpc.h usability... yes
checking rpc/rpc.h presence... yes
checking for rpc/rpc.h... yes
checking visa/visa.h usability... no
checking visa/visa.h presence... no
checking for visa/visa.h... no
configure: creating ./config.status
config.status: creating octave-wrappers.h
config.status: creating Makefile
config.status: creating gpib/Makefile
config.status: creating tcp/Makefile
config.status: creating udp/Makefile
config.status: creating vxi11/Makefile
config.status: creating usbtmc/Makefile
config.status: creating serial/Makefile
config.status: creating parallel/Makefile
config.status: creating i2c/Makefile
config.status: creating resolvehost/Makefile
config.status: creating config.h
configure:
octave instrument control package is now configured with
BUILD SERIAL: yes
BUILD PARALLEL: no
BUILD I2C: no
BUILD TCP: yes
BUILD UDP: yes
BUILD USBTMC: no
BUILD GPIB: no
BUILD VXI11: yes
BUILD RESOLVEHOST: yes
GPIB LIBS:
VXI11 LIBS:
VXI11 INCLUDE:
VISA LIBS:
TCP LIBS:
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C serial
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C parallel
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C i2c
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C usbtmc
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C tcp
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C udp
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C gpib
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C vxi11
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c serial_class_lin.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c parallel_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c i2c_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c usbtmc_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c gpib_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c udp_class.cc
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H parallel_class.cc -o parallel_class.o
rpcgen -M vxi11.x
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H serial_class_lin.cc -o serial_class_lin.o
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c tcp_class.cc
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H udp_class.cc -o udp_class.o
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H i2c_class.cc -o i2c_class.o
usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen infile
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H usbtmc_class.cc -o usbtmc_class.o
clangclang /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-a][-b][-C][-Dname[=value]] -i size [-I [-K seconds]] [-A][-L][-M toolkit][-N][-T] infile
clangclang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/..-I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H gpib_class.cc -o gpib_class.o
: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss] [-o outfile] [infile]
clang++ -c -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -DHAVE_CONFIG_H tcp_class.cc -o tcp_class.o
: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-s nettype]* [-o outfile] [infile]
clangclangwarning /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-n netid]* [-o outfile] [infile]
: warning: : : : -lsuitesparseconfig: 'linker' input unusedwarning-lsuitesparseconfig: 'linker' input unusedwarningclangwarningoptions:
: : :
-A generate svc_caller() function
: -lsuitesparseconfig: 'linker' input unused-a generate all files, including samples
-lsuitesparseconfig: 'linker' input unused-b backward compatibility mode (generates code for SunOS 4.1)
-lsuitesparseconfig: 'linker' input unusedwarning
-c generate XDR routines
: clang-C ANSI C mode
-Dname[=value] define a symbol (same as #define)
: -lsuitesparseconfig: 'linker' input unused
warning-h generate header file
:
-i size size at which to start generating inline code
-lmetis: 'linker' input unused-I generate code for inetd support in server (for SunOS 4.1)
-K seconds server exits after K seconds of inactivity
-l generate client side stubs
clang-L server errors will be printed to syslog
: -m generate server side stubs
warning-n netid generate server code that supports named netid
: clangclangclangclangclang: : warning: warning: warning: : -lmetis: 'linker' input unused-lmetis: 'linker' input unused
-lmetis: 'linker' input unused
:
: warning: warning: -lmetis: 'linker' input unused-lmetis: 'linker' input unused
-lsuitesparseconfig: 'linker' input unused
clang: warning: -lmetis: 'linker' input unused
-N supports multiple arguments and call-by-value
-o outfile name of the output file
-s nettype generate server code that supports named nettype
-Sc generate sample client code that uses remote procedures
-Ss generate sample server code that defines remote procedures
-t generate RPC dispatch table
-T generate code to support RPC dispatch tables
-Y path directory name to find C preprocessor (cpp)
clang: warning: argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'
clang: warning: argument unused during make[1]: compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'clangclangclangclangclang: : *** [vxi11_clnt.c] Error 1warning: : : warning: warning: warningwarning
argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'
argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'
clang: warning: clangargument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': clang
warning: : warningargument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib':
argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'
clangclang: : warningwarning: : : argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'
...many more warnings...
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose gpib_close.o gpib_class.o -o ../gpib_close.oct
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../gpib_timeout.oct gpib_timeout.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../gpib_write.oct gpib_write.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose gpib_read.o gpib_class.o-o ../gpib_read.oct
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../gpib_close.oct gpib_close.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clang: warning: argument unused during compilation: '-pthread'
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../gpib_read.oct gpib_read.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clangclang: /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_spoll__.o gpib_class.o -o ../__gpib_spoll__.oct
warning: clang: warning: argument unused during compilation: '-pthread'argument unused during compilation: '-pthread'
: warning: argument unused during compilati/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_trigger__.o gpib_class.o -o ../__gpib_trigger__.oct
on: '-pthread'clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../__gpib_spoll__.oct __gpib_spoll__.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clang: warniclang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../__gpib_trigger__.oct __gpib_trigger__.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
ngclang: : argument unused during compilation: '-pthread'warning
: argument unused during compilation: '-pthread'
1 warning generated.
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __udp_properties__.o udp_class.o -o ../__udp_properties__.oct
clang: warning: argument unused during compilation: '-pthread'
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../__udp_properties__.oct __udp_properties__.o udp_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clang: warning: argument unused during compilation: '-pthread'
rm udp.o udp_timeout.o udp_close.o __udp_properties__.o udp_write.o udp_read.o
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_clrdevice__.o gpib_class.o -o ../__gpib_clrdevice__.oct
clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3 -o ../__gpib_clrdevice__.oct __gpib_clrdevice__.o gpib_class.o -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
clang: warning: argument unused during compilation: '-pthread'
rm __gpib_trigger__.o gpib_write.o gpib_read.o __gpib_spoll__.o gpib.o __gpib_clrdevice__.o gpib_timeout.o gpib_close.o
pkg: error running `make' for the instrument-control package.
error: called from 'configure_make' in file /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/share/octave/4.0.3/m/pkg/private/configure_make.m near line 96, column 9
While it is not a full solution to this problem, this could be a workaround if the VXI-11 interface is not needed. For instance, this worked for me to read serial data form an Arduino Micro.
After reporting the bug in the GNU Octave's bug tracker Savannah (see here), I was able to install the octave instrument-control package (see comment #3) in:
Octave 4.4.1
macOS Mojave
Apparently, as it can also be seen in the above provided output, the error occurs when running
rpcgen -M vxi11.x
since the rpcgen appears not to have the -M option (needed for the installation, otherwise it does not compile). I tried installing a newer version of rpcgen for macOS that included a -M (see e.g. rpcgen-mt here and here), but it didn't work. By omitting the installation of vxi11 (VXI-11 interface), I was finally able to install the instrument-control package.
Here are the steps I followed for this solution:
Download the instrument-control package from Octave Forge (e.g. here).
Expand the downloaded *.tar.gz file.
Open the Makefile.in inside src/ with your favourite text editor.
There should be a line (line 2 in my case) indicating the subdirectories to be installed
(e.g. SUBDIRS = serial parallel i2c usbtmc tcp udp gpib vxi11 resolvehost hwinfo)
Remove vxi11 from the list.
(i.e. SUBDIRS = serial parallel i2c usbtmc tcp udp gpib resolvehost hwinfo)
Save changes.
Generate the new .tar.gz file
$ tar -czf instrument-control-0.3.1.tar.gz instrument-control-0.3.1/
(with the appropriate numbers of the package version).
Inside Octave, while in the same directory of the above generated .tar.gz file, run:
> pkg install instrument-control-0.3.1.tar.gz -verbose
(again with the appropriate numbers of the package version).
After the installation some warnings may appear mainly due to the fact that vxi11 was omitted.
warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
For information about changes from previous versions of the instrument-control package, run 'news instrument-control'.
However, the output of > pkg list should include the instrument-control package (amongst any others installed packages):
Package Name | Version | Installation directory
--------------------+---------+-----------------------
control | 3.1.0 | /Users/Xavi/octave/control-3.1.0
instrument-control | 0.3.1 | /Users/Xavi/octave/instrument-control-0.3.1
signal | 1.4.0 | /Users/Xavi/octave/signal-1.4.0
symbolic | 2.7.1 | /Users/Xavi/octave/symbolic-2.7.1
In addition, some warnings may also appear every time the instrument-control package is loaded for the first time (> pkg load instrument-control). This warnings again refer to the missing installation of vxi11.
Despite of these warnings, I have been able to correctly read serial data form an Arduino Micro.

Installing SPro on ubuntu16.04(x86_64)

SPro can be downloaded here,and it's installed by ./configure, make, make install. However, ./configure and make both arouse errors.
First, run ./configure, get the following warnings:
Try /large_dsk/share/upload/spro-5.0/spro-5.0/auxdir/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for gawk... no
The total output is as following:
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/large_dsk/share/upload/spro-5.0/spro-5.0/auxdir/missing: Unknown `--run' option
Try `/large_dsk/share/upload/spro-5.0/spro-5.0/auxdir/missing --help' for more information
configure: WARNING: `missing' script is too old or missing
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ANSI C... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for AIX... no
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking for library containing strerror... none required
checking for function prototypes... yes
checking for string.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether byte ordering is bigendian... no
checking for size_t... yes
checking for char... yes
checking size of char... 1
checking for short... yes
checking size of short... 2
checking for long... yes
checking size of long... 8
checking for ANSI C header files... (cached) yes
checking whether time.h and sys/time.h may both be included... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking for stdlib.h... (cached) yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking for string.h... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for vprintf... yes
checking for _doprnt... no
configure: checking for gcc warning options...
... -Wbad-function-cast
... -Wcast-align
... -Wmissing-declarations
... -Wmissing-prototypes
... -Wnested-externs
... -Wpointer-arith
... -Wshadow
... -Wstrict-prototypes
... -Wwrite-strings
checking if malloc debugging is wanted... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating auxdir/Makefile
config.status: creating test/Makefile
config.status: creating test/ref/Makefile
config.status: creating test/dat/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
Second, when run the make, get the following errors:
I searched this error, and get the method that add -lm in gcc command, but seemly it doesn't work.
And the total ouput is as following:
So should I install some libs first or the gcc version is not right? my gcc version is gcc 5.4.0.
make all-recursive
make[1]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0'
Making all in doc
make[2]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/doc'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/doc'
Making all in auxdir
make[2]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/auxdir'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/auxdir'
Making all in test
make[2]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test'
Making all in ref
make[3]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test/ref'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test/ref'
Making all in dat
make[3]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test/dat'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test/dat'
make[3]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test'
make[2]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0/test'
make[2]: Entering directory '/large_dsk/share/upload/spro-5.0/spro-5.0'
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT sig.o -MD -MP -MF ".deps/sig.Tpo" -c -o sig.o sig.c; \
then mv -f ".deps/sig.Tpo" ".deps/sig.Po"; else rm -f ".deps/sig.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT spf.o -MD -MP -MF ".deps/spf.Tpo" -c -o spf.o spf.c; \
then mv -f ".deps/spf.Tpo" ".deps/spf.Po"; else rm -f ".deps/spf.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT header.o -MD -MP -MF ".deps/header.Tpo" -c -o header.o header.c; \
then mv -f ".deps/header.Tpo" ".deps/header.Po"; else rm -f ".deps/header.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT misc.o -MD -MP -MF ".deps/misc.Tpo" -c -o misc.o misc.c; \
then mv -f ".deps/misc.Tpo" ".deps/misc.Po"; else rm -f ".deps/misc.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT lpc.o -MD -MP -MF ".deps/lpc.Tpo" -c -o lpc.o lpc.c; \
then mv -f ".deps/lpc.Tpo" ".deps/lpc.Po"; else rm -f ".deps/lpc.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT convert.o -MD -MP -MF ".deps/convert.Tpo" -c -o convert.o convert.c; \
then mv -f ".deps/convert.Tpo" ".deps/convert.Po"; else rm -f ".deps/convert.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT fft.o -MD -MP -MF ".deps/fft.Tpo" -c -o fft.o fft.c; \
then mv -f ".deps/fft.Tpo" ".deps/fft.Po"; else rm -f ".deps/fft.Tpo"; exit 1; fi
rm -f libspro.a
ar cru libspro.a sig.o spf.o header.o misc.o lpc.o convert.o fft.o
ar: `u' modifier ignored since `D' is the default (see `U')
ranlib libspro.a
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT scopy.o -MD -MP -MF ".deps/scopy.Tpo" -c -o scopy.o scopy.c; \
then mv -f ".deps/scopy.Tpo" ".deps/scopy.Po"; else rm -f ".deps/scopy.Tpo"; exit 1; fi
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gggetopt.o -MD -MP -MF ".deps/gggetopt.Tpo" -c -o gggetopt.o gggetopt.c; \
then mv -f ".deps/gggetopt.Tpo" ".deps/gggetopt.Po"; else rm -f ".deps/gggetopt.Tpo"; exit 1; fi
gggetopt.c: In function \u2018_getopt_long\u2019:
gggetopt.c:442:12: warning: implicit declaration of function \u2018strcmp\u2019 [-Wimplicit-function-declaration]
if ( strcmp(optarg, "--") == 0 ) {
^
gcc -g -O2 -o scopy scopy.o gggetopt.o -lm -L. -lspro
./libspro.a(misc.o): In function `spf_buf_normalize':
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:278: undefined reference to `sqrt'
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:187: undefined reference to `sqrt'
./libspro.a(misc.o): In function `set_lifter':
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:408: undefined reference to `sin'
./libspro.a(misc.o): In function `sig_normalize':
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:431: undefined reference to `sqrt'
./libspro.a(misc.o): In function `set_sig_win':
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:464: undefined reference to `cos'
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:479: undefined reference to `cos'
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:479: undefined reference to `cos'
/large_dsk/share/upload/spro-5.0/spro-5.0/misc.c:471: undefined reference to `cos'
collect2: error: ld returned 1 exit status
Makefile:353: recipe for target 'scopy' failed
make[2]: *** [scopy] Error 1
make[2]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0'
Makefile:432: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/large_dsk/share/upload/spro-5.0/spro-5.0'
Makefile:236: recipe for target 'all' failed
make: *** [all] Error 2
I think the build script is just wrong:
gcc -g -O2 -o scopy scopy.o gggetopt.o -lm -L. -lspro
Since -lspro uses functions from -lm, it has to come first. See this answer for some background.
I encountered the same error as you did. I wanted to installed spro 4.0 and failed.
I have been tried a lot of methods like updating the gcc,and install different version gcc but it didn't work anymore.I think the reason of this error is that installing spro 4.0 needs a old version gcc like g++-4.4.
So I solved this problem as follow:
1.first install g++-4.4,
we maybe can't install g++-4.4 in directly,so we have to install or update by the command as follow:
$sudo add-apt-repository ppa:ubuntu-toolchain-r/test
$sudo apt-get update
$sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib
2.when installed g++-4.4 successfully, we enter the spro4.0 directory and run the install command,to prevent the permission of the installation,I suggest that we run in root or sudo:
# export CC=gcc-4.4
# ./configure && make && make install
Please don't hesitate to contact me if you have any questions.

memcached make error: Error1 And Error2

I was trying to follow this tutorial:
https://devcenter.heroku.com/articles/process-model
And in the very first step, I wget the file and run the ./configure script.
It complained about missing libevent-
➜ memcached-1.4.5 ./configure
checking build system type... i386-apple-darwin13.1.0
checking host system type... i386-apple-darwin13.1.0
checking target system type... i386-apple-darwin13.1.0
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for icc in use... no
checking for Sun cc in use... no
checking for gcc option to accept ISO C99... none needed
checking whether gcc and cc understand -c and -o together... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking sasl/sasl.h usability... yes
checking sasl/sasl.h presence... yes
checking for sasl/sasl.h... yes
checking for gcov... /usr/bin/gcov
checking for main in -lgcov... no
checking for libevent directory... configure: error: libevent is required.
After that I did a
$ brew install libevent
Running the ./configure passed without any error:
➜ memcached-1.4.5 ./configure
checking build system type... i386-apple-darwin13.1.0
checking host system type... i386-apple-darwin13.1.0
checking target system type... i386-apple-darwin13.1.0
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for icc in use... no
checking for Sun cc in use... no
checking for gcc option to accept ISO C99... none needed
checking whether gcc and cc understand -c and -o together... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking sasl/sasl.h usability... yes
checking sasl/sasl.h presence... yes
checking for sasl/sasl.h... yes
checking for gcov... /usr/bin/gcov
checking for main in -lgcov... no
checking for libevent directory... (system)
checking for library containing socket... none required
checking for library containing gethostbyname... none required
checking for library containing umem_cache_create... no
checking for library containing gethugepagesizes... no
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for inttypes.h... (cached) yes
checking for print macros for integers (C99 section 7.8.1)... yes
checking for an ANSI C-conforming const... yes
checking for socklen_t... yes
checking for endianness... little
checking for htonll... no
checking for library containing pthread_create... none required
checking for mlockall... yes
checking for getpagesizes... no
checking for memcntl... no
checking for sigignore... yes
checking for alignment... need
checking for setppriv... no
checking umem.h usability... no
checking umem.h presence... no
checking for umem.h... no
checking for xml2rfc... no
checking for xsltproc... /usr/bin/xsltproc
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
then,
➜ memcached-1.4.5 make
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-recursive
Making all in doc
/Applications/Xcode.app/Contents/Developer/usr/bin/make all-am
make[3]: Nothing to be done for `all-am'.
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-memcached.o -MD -MP -MF .deps/memcached-memcached.Tpo -c -o memcached-memcached.o `test -f 'memcached.c' || echo './'`memcached.c
mv -f .deps/memcached-memcached.Tpo .deps/memcached-memcached.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-hash.o -MD -MP -MF .deps/memcached-hash.Tpo -c -o memcached-hash.o `test -f 'hash.c' || echo './'`hash.c
mv -f .deps/memcached-hash.Tpo .deps/memcached-hash.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-slabs.o -MD -MP -MF .deps/memcached-slabs.Tpo -c -o memcached-slabs.o `test -f 'slabs.c' || echo './'`slabs.c
mv -f .deps/memcached-slabs.Tpo .deps/memcached-slabs.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-items.o -MD -MP -MF .deps/memcached-items.Tpo -c -o memcached-items.o `test -f 'items.c' || echo './'`items.c
mv -f .deps/memcached-items.Tpo .deps/memcached-items.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-assoc.o -MD -MP -MF .deps/memcached-assoc.Tpo -c -o memcached-assoc.o `test -f 'assoc.c' || echo './'`assoc.c
mv -f .deps/memcached-assoc.Tpo .deps/memcached-assoc.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-thread.o -MD -MP -MF .deps/memcached-thread.Tpo -c -o memcached-thread.o `test -f 'thread.c' || echo './'`thread.c
mv -f .deps/memcached-thread.Tpo .deps/memcached-thread.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-daemon.o -MD -MP -MF .deps/memcached-daemon.Tpo -c -o memcached-daemon.o `test -f 'daemon.c' || echo './'`daemon.c
mv -f .deps/memcached-daemon.Tpo .deps/memcached-daemon.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-stats.o -MD -MP -MF .deps/memcached-stats.Tpo -c -o memcached-stats.o `test -f 'stats.c' || echo './'`stats.c
mv -f .deps/memcached-stats.Tpo .deps/memcached-stats.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-util.o -MD -MP -MF .deps/memcached-util.Tpo -c -o memcached-util.o `test -f 'util.c' || echo './'`util.c
mv -f .deps/memcached-util.Tpo .deps/memcached-util.Po
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-cache.o -MD -MP -MF .deps/memcached-cache.Tpo -c -o memcached-cache.o `test -f 'cache.c' || echo './'`cache.c
mv -f .deps/memcached-cache.Tpo .deps/memcached-cache.Po
gcc -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -o memcached memcached-memcached.o memcached-hash.o memcached-slabs.o memcached-items.o memcached-assoc.o memcached-thread.o memcached-daemon.o memcached-stats.o memcached-util.o memcached-cache.o -levent
clang: error: argument unused during compilation: '-pthread'
make[2]: *** [memcached] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Ends up with this error. I haven't ever build anything from source till now so some pointers in how to go about debugging this kind of problem will be helpful. Looking at another post I see the following info maybe helpful:
➜ memcached-1.4.5 gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix
And my os is mac os x 10.9.2
Thanks and regards,
Dhruv Kapur.

How to install Cufflinks on Cygwin

I'm attempting to install cufflinks 2.0.1 on my Windows 7 system using Cygwin. I have done all of the installation steps up to the Make command, but that make command keeps on failing for some reason. I was wondering if anyone could tell me why. I'm using Boost version 1.50
First, here's what happens when I run the configure file:
Benjamin S#BenjaminS-HP /cygdrive/c/analysistools/cufflinks-2.0.1
$ ./configure --prefix=/cygdrive/c/analysistools/cufflinks --with-boost=/cygdrive/c/AnalysisTools/boost --with-bam=/cygdrive/c/analysistools/samtools/samtools
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gawk... (cached) gawk
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking for a Python interpreter with version >= 2.4... python
checking for python... /usr/bin/python
checking for python version... 2.6
checking for python platform... cygwin
checking for python script directory... ${prefix}/lib/python2.6/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.6/site-packages
checking for boostlib >= 1.47.0... yes
checking for bamlib... yes
checking build system type... i686-pc-cygwin
checking whether the Boost::Thread library is available... yes
checking for exit in -lboost_thread... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking if zlib is wanted... yes
checking for inflateEnd in -lz... yes
checking zlib.h usability... yes
checking zlib.h presence... yes
checking for zlib.h... yes
checking for inflateEnd in -lz... (cached) yes
checking zlib in /usr... ok
checking for eigenlib... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for inline... inline
checking for pid_t... yes
checking for size_t... yes
checking for ptrdiff_t... yes
checking host system type... i686-pc-cygwin
checking if gcc accepts -m64... no
checking for struct sysinfo.totalram... yes
checking whether sysctl is declared... no
checking whether CTL_HW is declared... no
checking whether HW_PHYSMEM is declared... no
checking how to create a pax tar archive... gnutar
checking dependency style of gcc... (cached) gcc3
checking dependency style of g++... (cached) gcc3
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: executing depfiles commands
-- cufflinks 2.0.1 Configuration Results --
C++ compiler: g++ -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include
GCC version: gcc (GCC) 4.5.3
Host System type: i686-pc-cygwin
Install prefix: /cygdrive/c/analysistools/cufflinks
Install eprefix: ${prefix}
See config.h for further configuration information.
Then here is what happens when I try to make it:
Benjamin S#BenjaminS-HP /cygdrive/c/analysistools/cufflinks-2.0.1
$ make
make all-recursive
make[1]: Entering directory `/cygdrive/c/analysistools/cufflinks-2.0.1'
Making all in src
make[2]: Entering directory `/cygdrive/c/analysistools/cufflinks-2.0.1/src'
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT clustering.o -MD -MP -MF .deps/clustering.Tpo -c -o clustering.o clustering.cpp
g++: unrecognized option '-pthread'
mv -f .deps/clustering.Tpo .deps/clustering.Po
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT differential.o -MD -MP -MF .deps/differential.Tpo -c -o differential.o differential.cpp
g++: unrecognized option '-pthread'
In file included from differential.h:29:0,
from differential.cpp:18:
replicates.h: In member function ‘bool ReplicatedBundleFactory::next_bundle(HitBundle&)’:
replicates.h:152:50: warning: unused variable ‘s2’
In file included from differential.cpp:18:0:
differential.h: In constructor ‘FPKMContext::FPKMContext(double, double, double, double, const CountPerReplicateTable&, double, const FPKMPerReplicateTable&, double, AbundanceStatus, const StatusPerReplicateTable&)’:
differential.h:142:21: warning: ‘FPKMContext::status’ will be initialized after
differential.h:139:29: warning: ‘StatusPerReplicateTable FPKMContext::status_per_rep’
differential.h:131:2: warning: when initialized here
differential.cpp: In member function ‘void TestLauncher::perform_testing(std::vector<boost::shared_ptr<SampleAbundances> >&)’:
differential.cpp:212:31: warning: unused variable ‘s2’
differential.cpp: In member function ‘void TestLauncher::record_tracking_data(std::vector<boost::shared_ptr<SampleAbundances> >&)’:
differential.cpp:240:31: warning: unused variable ‘s2’
differential.cpp: In function ‘SampleDifference get_ds_tests(const AbundanceGroup&, const AbundanceGroup&, bool)’:
differential.cpp:790:16: warning: unused variable ‘name’
differential.cpp: In function ‘void test_differential(const std::string&, const std::vector<boost::shared_ptr<SampleAbundances> >&, Tests&, Tracking&, bool)’:
differential.cpp:1771:83: warning: comparison between signed and unsigned integer expressions
differential.cpp:1772:83: warning: comparison between signed and unsigned integer expressions
differential.cpp:1814:83: warning: comparison between signed and unsigned integer expressions
differential.cpp:1815:83: warning: comparison between signed and unsigned integer expressions
differential.cpp:1856:83: warning: comparison between signed and unsigned integer expressions
differential.cpp:1857:83: warning: comparison between signed and unsigned integer expressions
mv -f .deps/differential.Tpo .deps/differential.Po
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT common.o -MD -MP -MF .deps/common.Tpo -c -o common.o common.cpp
g++: unrecognized option '-pthread'
In file included from common.cpp:28:0:
replicates.h: In member function ‘bool ReplicatedBundleFactory::next_bundle(HitBundle&)’:
replicates.h:152:50: warning: unused variable ‘s2’
mv -f .deps/common.Tpo .deps/common.Po
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT assemble.o -MD -MP -MF .deps/assemble.Tpo -c -o assemble.o assemble.cpp
g++: unrecognized option '-pthread'
mv -f .deps/assemble.Tpo .deps/assemble.Po
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT tokenize.o -MD -MP -MF .deps/tokenize.Tpo -c -o tokenize.o tokenize.cpp
g++: unrecognized option '-pthread'
mv -f .deps/tokenize.Tpo .deps/tokenize.Po
g++ -DHAVE_CONFIG_H -I. -I.. -I../src -I/usr/include -Wall -Wno-strict-aliasing -g -gdwarf-2 -Wunused -Wuninitialized -D_FILE_OFFSET_BITS=64 -O3 -DNDEBUG -pthread -I/cygdrive/c/AnalysisTools/boost/include -I/cygdrive/c/analysistools/samtools/samtools/include -I/usr/local/include -MT abundances.o -MD -MP -MF .deps/abundances.Tpo -c -o abundances.o abundances.cpp
g++: unrecognized option '-pthread'
In file included from abundances.cpp:35:0:
replicates.h: In member function ‘bool ReplicatedBundleFactory::next_bundle(HitBundle&)’:
replicates.h:152:50: warning: unused variable ‘s2’
abundances.cpp: In function ‘void collapse_equivalent_hits(const std::vector<MateHit>&, std::vector<boost::shared_ptr<Abundance> >&, std::vector<boost::shared_ptr<Abundance> >&, std::vector<MateHit>&, std::vector<double>&, bool)’:
abundances.cpp:769:28: warning: comparison between signed and unsigned integer expressions
abundances.cpp: In function ‘long double solve_beta(long double, long double, long double)’:
abundances.cpp:1227:145: error: ‘sqrtl’ was not declared in this scope
abundances.cpp: In member function ‘void AbundanceGroup::calculate_FPKM_covariance()’:
abundances.cpp:1780:24: warning: unused variable ‘fpkm’
abundances.cpp: In function ‘void calculate_assignment_probs(const Eigen::VectorXd&, const Eigen::MatrixXd&, const Eigen::VectorXd&, Eigen::MatrixXd&)’:
abundances.cpp:2205:58: warning: comparison between signed and unsigned integer expressions
abundances.cpp: In function ‘AbundanceStatus gamma_mle(const std::vector<boost::shared_ptr<Abundance> >&, const std::vector<MateHit>&, const std::vector<double>&, std::vector<double>&, bool)’:
abundances.cpp:3300:48: warning: comparison between signed and unsigned integer expressions
abundances.cpp:3302:52: warning: comparison between signed and unsigned integer expressions
In file included from abundances.cpp:36:0:
sampling.h: In function ‘double boost::numeric::ublas::cholesky_factorize(M&) [with M = boost::numeric::ublas::matrix<double>]’:
abundances.cpp:117:45: instantiated from here
sampling.h:83:7: error: ‘sqrtl’ was not declared in this scope
/cygdrive/c/AnalysisTools/boost/include/boost/system/error_code.hpp: At global scope:
/cygdrive/c/AnalysisTools/boost/include/boost/system/error_code.hpp:214:36: warning: ‘boost::system::posix_category’ defined but not used
/cygdrive/c/AnalysisTools/boost/include/boost/system/error_code.hpp:215:36: warning: ‘boost::system::errno_ecat’ defined but not used
/cygdrive/c/AnalysisTools/boost/include/boost/system/error_code.hpp:216:36: warning: ‘boost::system::native_ecat’ defined but not used
Makefile:1444: recipe for target `abundances.o' failed
make[2]: *** [abundances.o] Error 1
make[2]: Leaving directory `/cygdrive/c/analysistools/cufflinks-2.0.1/src'
Makefile:290: recipe for target `all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/cygdrive/c/analysistools/cufflinks-2.0.1'
Makefile:228: recipe for target `all' failed
make: *** [all] Error 2
I'm still a bit of an amateur when it comes to cygwin and several bioinformatics programs that require it for me, so I appreciate whatever help you can give.
It looks like you are missing the sqrtl function:
abundances.cpp:1227:145: error: ‘sqrtl’ was not declared in this scope
I do see this defined in Cygwin 1.7.16 in math.h as:
extern long double sqrtl _PARAMS((long double));
Are you running 1.7.16 of Cygwin? Check your /usr/include/math.h and see if sqrtl is defined.
However, I'd be careful running this in Cygwin. Officially cygwin says sqrtl isn't implemented, but I can build a test program to use it. I'm not seeing the results I'd expect, although my C is a bit rusty.

Trouble installing mod_mono on Mac OSX Lion

There is another question regarding installing mod_mono on OSX, but I'm going to assume that was before Lion came about, which had some breaking changes for developers (like python versions).
I've followed the instructions in the INSTALL readme of mod_mono-2.10. No Avail.
Exactly what I've done is this:
tar xvfz mod_mono-2.10.tar.gz
cd mod_mono-X.Y.Z
./configure --prefix=/usr
make
make install
$ apachectl -t
httpd: Syntax error on line 54 of /private/etc/apache2/httpd.conf: Syntax error on line 8 of /private/etc/apache2/other/mod_mono.conf: Cannot load /usr/libexec/apache2/mod_mono.so into server:
dlopen(/usr/libexec/apache2/mod_mono.so, 10): no suitable image found. Did find:\n\t/usr/libexec/apache2/mod_mono.so: mach-o, but wrong architecture
It appears that mod_mono wasn't really the problem. It was mono itself.
smeatonj$ file /usr/bin/mono
/usr/bin/mono: Mach-O executable i386
smeatonj$ file /usr/libexec/apache2/mod_mono.so
/usr/libexec/apache2/mod_mono.so: Mach-O 64-bit bundle x86_64
meatonj$ file /usr/sbin/httpd
/usr/sbin/httpd: Mach-O universal binary with 2 architectures
/usr/sbin/httpd (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/sbin/httpd (for architecture i386): Mach-O executable i386
smeatonj$ file /usr/bin/mono
/usr/bin/mono: Mach-O executable i386
The mono package itself is not compiled for 64 bit. Perhaps I should have fully read the install guide but here is the main bit of concern:
32 and 64 bit support
The Mono packages published on this web site provide a 32-bit Mono VM.
Support for 64-bit VMs as of Mono 2.10 is only available if you build Mono from source code and install your own copy of the VM. In the future we will ship both mono and mono64 binaries for our users.
The 64 bit support has a few limitations today which is why we have not entirely switched to it:
Our Windows.Forms implementation uses Carbon, and as such, it would not work with a 64-bit Mono.
MonoDevelop uses Carbon for its menu integration so it would not run on a 64-bit VM.
MonoMac bindings have not been ported to 64 bits.
Supporting 64-bit Mono across the board would also require us to ship a 64-bit Gtk+ stack and that would increase the download size for most users.
I attempted to recompile mod_mono in i386 so that it can run with the mono runtime
sudo -s
CFLAGS="-arch i386" ./configure --prefix=/usr
make
make install
smeatonj$ file /usr/libexec/apache2/mod_mono.so
/usr/libexec/apache2/mod_mono.so: Mach-O bundle i386
Same problem:
$ apachectl -t
httpd: Syntax error on line 54 of /private/etc/apache2/httpd.conf: Syntax error on line 8 of /private/etc/apache2/other/mod_mono.conf: Cannot load /usr/libexec/apache2/mod_mono.so into server:
dlopen(/usr/libexec/apache2/mod_mono.so, 10): no suitable image found. Did find:\n\t/usr/libexec/apache2/mod_mono.so: mach-o, but wrong architecture
Am I going to be able to run mod_mono on apache without compiling and installing a 64 bit version of mono? I guess I could do it side-by-side, but this whole process has been very very time consuming.. I'm not sure about maintaining the official package, and a different version just for a test webserver.
Here is the exact terminal output for the latest recompilation of mod_mono:
Josh-Mac:mod_mono-2.10 smeatonj$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking build system type... i386-apple-darwin11.2.0
checking host system type... i386-apple-darwin11.2.0
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld
checking if the linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from gcc object... ok
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fno-common -DPIC
checking if gcc PIC flag -fno-common -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin11.2.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether byte ordering is bigendian... no
checking for pkg-config... /usr/bin/pkg-config
checking for sys/wait.h that is POSIX.1 compatible... yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking for pid_t... yes
checking for size_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for ANSI C header files... (cached) yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking types of arguments for select... int,fd_set *,struct timeval *
checking for memset... yes
checking for mkdir... yes
checking for unsetenv... yes
checking for putenv... yes
checking for setenv... yes
checking for setrlimit... yes
checking for select... yes
checking for strcasecmp... yes
checking for strerror... yes
checking for strrchr... yes
checking for dup2... yes
checking for strndup... yes
checking if debug mode is requested... no
checking What level debug messages should be printed at... debug output disabled
checking whether mod_mono should remove the DISPLAY variable from environment... no
checking if gcov compilation was requested... no
checking if gprof support was requested... no
checking for apxs2 in /usr/local/apache2/sbin... no
checking for apxs in /usr/local/apache2/sbin... no
checking for apxs2 in /usr/local/apache2/bin... no
checking for apxs in /usr/local/apache2/bin... no
checking for apxs2 in /usr/local/apache/sbin... no
checking for apxs in /usr/local/apache/sbin... no
checking for apxs2 in /usr/local/apache/bin... no
checking for apxs in /usr/local/apache/bin... no
checking for apxs2 in /usr/sbin... no
checking for apxs in /usr/sbin... /usr/sbin/apxs
checking for apr-1-config in /usr/sbin... no
checking for apr-config in /usr/sbin... no
checking for apr-1-config in /usr/local/apache2/sbin... no
checking for apr-config in /usr/local/apache2/sbin... no
checking for apr-1-config in /usr/local/apache2/bin... no
checking for apr-config in /usr/local/apache2/bin... no
checking for apr-1-config in /usr/local/apache/sbin... no
checking for apr-config in /usr/local/apache/sbin... no
checking for apr-1-config in /usr/local/apache/bin... no
checking for apr-config in /usr/local/apache/bin... no
checking for apr-1-config in /usr/sbin... no
checking for apr-config in /usr/sbin... no
checking for apr-1-config in /usr/bin... found.
checking for apu-1-config in /usr/sbin... no
checking for apu-config in /usr/sbin... no
checking for apu-1-config in /usr/local/apache2/sbin... no
checking for apu-config in /usr/local/apache2/sbin... no
checking for apu-1-config in /usr/local/apache2/bin... no
checking for apu-config in /usr/local/apache2/bin... no
checking for apu-1-config in /usr/local/apache/sbin... no
checking for apu-config in /usr/local/apache/sbin... no
checking for apu-1-config in /usr/local/apache/bin... no
checking for apu-config in /usr/local/apache/bin... no
checking for apu-1-config in /usr/sbin... no
checking for apu-config in /usr/sbin... no
checking for apu-1-config in /usr/bin... found.
checking Apache version... 2.2
checking for http_protocol.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating mod_mono.conf
config.status: creating src/Makefile
config.status: creating man/mod_mono.8
config.status: creating man/Makefile
config.status: creating include/mod_mono_config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing quiet commands
./config.status: line 2068: ./scripts/patch-quiet.sh: No such file or directory
config.status: executing quiet-libtool commands
---
Configuration summary for mod_mono
* Installation prefix = /usr/local
* Apache version = 2.2
* Apache modules directory = /usr/libexec/apache2
* apxs = /usr/sbin/apxs
* apr-config = /usr/bin/apr-1-config
* apu-config = /usr/bin/apu-1-config
* CFLAGS = -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1
* Verbose logging (debug) = no
* GCOV options used = no
* Profiling enabled = no
* mono prefix = /Library/Frameworks/Mono.framework/Versions/2.10.8
* Default MonoApplicationsConfigDir = /private/etc/apache2/mod-mono-applications
---
Josh-Mac:mod_mono-2.10 smeatonj$ make
Making all in src
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mod_mono.lo -MD -MP -MF .deps/mod_mono_la-mod_mono.Tpo -c -o mod_mono_la-mod_mono.lo `test -f 'mod_mono.c' || echo './'`mod_mono.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mod_mono.lo -MD -MP -MF .deps/mod_mono_la-mod_mono.Tpo -c mod_mono.c -fno-common -DPIC -o .libs/mod_mono_la-mod_mono.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mod_mono.lo -MD -MP -MF .deps/mod_mono_la-mod_mono.Tpo -c mod_mono.c -o mod_mono_la-mod_mono.o >/dev/null 2>&1
mv -f .deps/mod_mono_la-mod_mono.Tpo .deps/mod_mono_la-mod_mono.Plo
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mono-io-portability.lo -MD -MP -MF .deps/mod_mono_la-mono-io-portability.Tpo -c -o mod_mono_la-mono-io-portability.lo `test -f 'mono-io-portability.c' || echo './'`mono-io-portability.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mono-io-portability.lo -MD -MP -MF .deps/mod_mono_la-mono-io-portability.Tpo -c mono-io-portability.c -fno-common -DPIC -o .libs/mod_mono_la-mono-io-portability.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-mono-io-portability.lo -MD -MP -MF .deps/mod_mono_la-mono-io-portability.Tpo -c mono-io-portability.c -o mod_mono_la-mono-io-portability.o >/dev/null 2>&1
mv -f .deps/mod_mono_la-mono-io-portability.Tpo .deps/mod_mono_la-mono-io-portability.Plo
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-glib_compat.lo -MD -MP -MF .deps/mod_mono_la-glib_compat.Tpo -c -o mod_mono_la-glib_compat.lo `test -f 'glib_compat.c' || echo './'`glib_compat.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-glib_compat.lo -MD -MP -MF .deps/mod_mono_la-glib_compat.Tpo -c glib_compat.c -fno-common -DPIC -o .libs/mod_mono_la-glib_compat.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../include -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apache2 -g -O2 -I/usr/include/apache2 -I/usr/local/include -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/include/apr-1 -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -MT mod_mono_la-glib_compat.lo -MD -MP -MF .deps/mod_mono_la-glib_compat.Tpo -c glib_compat.c -o mod_mono_la-glib_compat.o >/dev/null 2>&1
mv -f .deps/mod_mono_la-glib_compat.Tpo .deps/mod_mono_la-glib_compat.Plo
/bin/sh ../libtool --tag=CC --mode=link gcc -Wall -DDFLT_MONO_CONFIG_DIR=\"/private/etc/apache2/mod-mono-applications\" -g -O2 -I/usr/include/apache2 -I/usr/local/include -I/usr/include/apr-1 -I/usr/include/apr-1 -module -o mod_mono.la -rpath /usr/local/lib mod_mono_la-mod_mono.lo mod_mono_la-mono-io-portability.lo mod_mono_la-glib_compat.lo
libtool: link: gcc -Wl,-undefined -Wl,dynamic_lookup -o .libs/mod_mono.0.so -bundle .libs/mod_mono_la-mod_mono.o .libs/mod_mono_la-mono-io-portability.o .libs/mod_mono_la-glib_compat.o
libtool: link: dsymutil .libs/mod_mono.0.so || :
libtool: link: (cd ".libs" && rm -f "mod_mono.so" && ln -s "mod_mono.0.so" "mod_mono.so")
libtool: link: ar cru .libs/mod_mono.a mod_mono_la-mod_mono.o mod_mono_la-mono-io-portability.o mod_mono_la-glib_compat.o
libtool: link: ranlib .libs/mod_mono.a
libtool: link: ( cd ".libs" && rm -f "mod_mono.la" && ln -s "../mod_mono.la" "mod_mono.la" )
Making all in man
make[1]: Nothing to be done for `all'.
make[1]: Nothing to be done for `all-am'.
Josh-Mac:mod_mono-2.10 smeatonj$ sudo make install
Making install in src
/bin/sh /Users/smeatonj/Development/src/mod_mono-2.10/install-sh -d "/usr/libexec/apache2"
/usr/sbin/apxs -S LIBEXECDIR="/usr/libexec/apache2" -i -n mono mod_mono.la
/usr/share/httpd/build/instdso.sh SH_LIBTOOL='/usr/share/apr-1/build-1/libtool' mod_mono.la /usr/libexec/apache2
/usr/share/apr-1/build-1/libtool --mode=install cp mod_mono.la /usr/libexec/apache2/
libtool: install: cp .libs/mod_mono.0.so /usr/libexec/apache2/mod_mono.0.so
libtool: install: (cd /usr/libexec/apache2 && { ln -s -f mod_mono.0.so mod_mono.so || { rm -f mod_mono.so && ln -s mod_mono.0.so mod_mono.so; }; })
libtool: install: cp .libs/mod_mono.lai /usr/libexec/apache2/mod_mono.la
libtool: install: cp .libs/mod_mono.a /usr/libexec/apache2/mod_mono.a
libtool: install: chmod 644 /usr/libexec/apache2/mod_mono.a
libtool: install: ranlib /usr/libexec/apache2/mod_mono.a
libtool: install: warning: remember to run `libtool --finish /usr/local/lib'
chmod 755 /usr/libexec/apache2/mod_mono.so
Making install in man
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/man/man8" || .././install-sh -c -d "/usr/local/share/man/man8"
/usr/bin/install -c -m 644 './mod_mono.8' '/usr/local/share/man/man8/mod_mono.8'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/private/etc/apache2" || ./install-sh -c -d "/private/etc/apache2"
/usr/bin/install -c -m 644 'mod_mono.conf' '/private/etc/apache2/mod_mono.conf'
Josh-Mac:mod_mono-2.10 smeatonj$
Josh-Mac:apache2 smeatonj$ sudo apachectl -t
httpd: Could not reliably determine the server's fully qualified domain name, using Josh-Mac.local for ServerName
Syntax OK
Josh-Mac:apache2 smeatonj$ sudo apachectl restart
/private/var/log/apache2/error_log output:
[Fri Jan 13 14:28:51 2012] [info] removed PID file /private/var/run/httpd.pid (pid=930)
[Fri Jan 13 14:28:51 2012] [notice] caught SIGTERM, shutting down
I also have mod_wsgi installed (the only other non-standard module), but I disabled that entirely, and still get the SIGTERM.
There is an error being generated in Console:
13/01/12 3:22:50.793 PM org.apache.httpd: httpd: Syntax error on line 73 of /private/etc/apache2/httpd.conf: Syntax error on line 8 of /private/etc/apache2/mod_mono.conf: Cannot load /usr/libexec/apache2/mod_mono.so into server: dlopen(/usr/libexec/apache2/mod_mono.so, 10): no suitable image found. Did find:\n\t/usr/libexec/apache2/mod_mono.so: mach-o, but wrong architecture
Here is what I did to set up mono/mod_mono on OSX 10.7, Apache2 - hopefully it saves someone else a few steps.
Note that I used a separate install of apache2. Your mileage may vary, but I have found pieces of installs here and there that are aggregated here as of Jul 2012 ... By configuring mod_mono.conf as I have, I now have an apache2/mono install that works, with an apache2 install that is standard from apache.org. While I am an Apple fan boy, I wish the OSX Apache installations were in a little more standard form.
(1) Set up Apache2 on OSX or use the default implementation as per your preference. If you build the httpd engine yourself, see commentary below.
(2) Get mod_mono source, and compile as shown below.
(3) Configure Apache's httpd.conf to include mod_mono.conf.
(4) Edit the mod_mono.conf to fit your needs.
(5) Restart Apache2.
When building apache2 to be placed at /usr/local/apache2:
./configure --prefix=/usr/local/apache2 --with-included-apr --enable-mods-shared=all --enable-module=so --enable-authz-host
When building mod_mono to find apache2 at /usr/local/apache2:
./configure --prefix=/usr/local
When configuring mod_mono on OSX 10.7 assuming that mono is accessible through /usr/bin as with a macports mono install:
# mod_mono.conf
# Achtung! This file may be overwritten
# Use 'include mod_mono.conf' from other configuration file
# to load mod_mono module.
<IfModule !mod_mono.c>
LoadModule mono_module /usr/local/apache2/modules/mod_mono.so
</IfModule>
<IfModule mod_headers.c>
Header set X-Powered-By "Mono"
</IfModule>
AddType application/x-asp-net .aspx
AddType application/x-asp-net .asmx
AddType application/x-asp-net .ashx
AddType application/x-asp-net .asax
AddType application/x-asp-net .ascx
AddType application/x-asp-net .soap
AddType application/x-asp-net .rem
AddType application/x-asp-net .axd
AddType application/x-asp-net .cs
AddType application/x-asp-net .vb
AddType application/x-asp-net .master
AddType application/x-asp-net .sitemap
AddType application/x-asp-net .resources
AddType application/x-asp-net .skin
AddType application/x-asp-net .browser
AddType application/x-asp-net .webinfo
AddType application/x-asp-net .resx
AddType application/x-asp-net .licx
AddType application/x-asp-net .csproj
AddType application/x-asp-net .vbproj
AddType application/x-asp-net .config
AddType application/x-asp-net .Config
AddType application/x-asp-net .dll
DirectoryIndex index.aspx
DirectoryIndex Default.aspx
DirectoryIndex default.aspx
Alias /mono "/Users/tommy/Sites/mono"
AddMonoApplications default "/mono:/Users/tommy/Sites/mono"
MonoServerPath **default** "/usr/bin/mod-mono-server4"
MonoExecutablePath "/usr/bin/mono"
<Location /mono>
MonoSetServerAlias **default**
SetHandler mono
DirectoryIndex index.aspx
</Location>
Note that the httpd.conf file includes the mod_mono.conf file shown above.
64-bit Mono VM is not required in order to run the 64-bit mod_mono under Apache. See my own "file" command outputs (I'm on Lion 10.7.2 with Apache 2.2.20, Mono 2.10.8 and mod_mono 2.10) :
file /usr/bin/mono
/usr/bin/mono: Mach-O executable i386
file /usr/libexec/apache2/mod_mono.so
/usr/libexec/apache2/mod_mono.so: Mach-O 64-bit bundle x86_64
file /usr/sbin/httpd
/usr/sbin/httpd: Mach-O universal binary with 2 architectures
/usr/sbin/httpd (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/sbin/httpd (for architecture i386): Mach-O executable i386
So, I have exactly the same output as you, and as you can see you must use a 64-bit mod_mono in order to run ASP.NET pages under 64-bit Apache with a 32-bit Mono VM.
I think you should try again from the beginning:
download the latest Mono VM (I suggest you to take version 2.10.8, not 2.10.8.1 as this one is not considered stable)
uninstall all previous versions of Mono by running in command line the script uninstallMono.sh located in the MonoFramework-MRE-2.10.8_3.macos10.xamarin.x86.pkg bundle, under the directory Contents/Resources
install normally the Mono VM
download the latest mod_mono Apache module : you must ensure that mod_mono version matches Mono VM version
extract the content of the archive where you want and compile it with the following commands (as you can see I don't provide any argument to the commands):
./configure
make
sudo make install
ensure that you have the following line at the end of your /etc/apache2/httpd.conf file : Include /private/etc/apache2/mod_mono.conf
restart Apache server with the following command: sudo apachectl restart
This should work! If it's not the case, please post the output of mod_mono compilation to see if any error occurred. And also your httpd.conf file: the problem may be related to another Apache module that conflicts with mod_mono.
I suggest to use my own version of mod_mono.conf file, because it enables the AutoHosting feature (just replace the MonoSetEnv LANG=fr_FR.UTF-8 line with your current culture, like "en-US.UTF-8" or "ja-JP.UTF-8").
Good luck! :o)

Resources