私は適切にコンパイルするためにlapackを必要とするソフトウェアを使いたいです。しかし、私はラップトップをMacで動かすことができません。私はmake
を入力し、このメッセージが到着した私は、LAPACK-3.7.1Mac OSX 10.11にlapackをインストールすることはできますか?
をインストールしようとしている
:
make: *** No rule to make target `lsame.o', needed by `testlsame'. Stop.
私はmake.incを変更しようとしましたが、私はインターネット上で見たいくつかの指示は更新されていないようです。 PLATをPLAT = _DARWINに変更する必要があることがわかりました。
http://www.commonmediainc.com/2008/03/24/building-lapack-and-rubys-linalg-on-mac-os-x/
私は私のmake.incファイルでそれを見ることができません。
lapackをインストールするための手順がいくつかありますか?
make.incファイル:
####################################################################
# LAPACK make include file. #
# LAPACK, Version 3.7.0 #
# December 2016 #
####################################################################
SHELL = /bin/sh
# CC is the C compiler, normally invoked with options CFLAGS.
#
CC = gcc
CFLAGS = -O3
# Modify the FORTRAN and OPTS definitions to refer to the compiler
# and desired compiler options for your machine. NOOPT refers to
# the compiler options desired when NO OPTIMIZATION is selected.
#
# Note: During a regular execution, LAPACK might create NaN and Inf
# and handle these quantities appropriately. As a consequence, one
# should not compile LAPACK with flags such as -ffpe-trap=overflow.
#
FORTRAN = gfortran
OPTS = -O2 -frecursive
DRVOPTS = $(OPTS)
NOOPT = -O0 -frecursive
# Define LOADER and LOADOPTS to refer to the loader and desired
# load options for your machine.
#
LOADER = gfortran
LOADOPTS =
# The archiver and the flag(s) to use when building an archive
# (library). If your system has no ranlib, set RANLIB = echo.
#
ARCH = ar
ARCHFLAGS = cr
RANLIB = ranlib
# Timer for the SECOND and DSECND routines
#
# Default: SECOND and DSECND will use a call to the
# EXTERNAL FUNCTION ETIME
#TIMER = EXT_ETIME
# For RS6K: SECOND and DSECND will use a call to the
# EXTERNAL FUNCTION ETIME_
#TIMER = EXT_ETIME_
# For gfortran compiler: SECOND and DSECND will use a call to the
# INTERNAL FUNCTION ETIME
TIMER = INT_ETIME
# If your Fortran compiler does not provide etime (like Nag Fortran
# Compiler, etc...) SECOND and DSECND will use a call to the
# INTERNAL FUNCTION CPU_TIME
#TIMER = INT_CPU_TIME
# If none of these work, you can use the NONE value.
# In that case, SECOND and DSECND will always return 0.
#TIMER = NONE
# Uncomment the following line to include deprecated routines in
# the LAPACK library.
#
#BUILD_DEPRECATED = Yes
# LAPACKE has the interface to some routines from tmglib.
# If LAPACKE_WITH_TMG is defined, add those routines to LAPACKE.
#
#LAPACKE_WITH_TMG = Yes
# Location of the extended-precision BLAS (XBLAS) Fortran library
# used for building and testing extended-precision routines. The
# relevant routines will be compiled and XBLAS will be linked only
# if USEXBLAS is defined.
#
#USEXBLAS = Yes
#XBLASLIB = -lxblas
# The location of the libraries to which you will link. (The
# machine-specific, optimized BLAS library should be used whenever
# possible.)
#
BLASLIB = ../../librefblas.a
CBLASLIB = ../../libcblas.a
LAPACKLIB = liblapack.a
TMGLIB = libtmglib.a
LAPACKELIB = liblapacke.a
Makefileは:
include ./make.inc
all: testlsame testslamch testdlamch testsecond testdsecnd testieee testversion
testlsame: lsame.o lsametst.o
$(LOADER) $(LOADOPTS) -o [email protected] $^
testslamch: slamch.o lsame.o slamchtst.o
$(LOADER) $(LOADOPTS) -o [email protected] $^
testdlamch: dlamch.o lsame.o dlamchtst.o
$(LOADER) $(LOADOPTS) -o [email protected] $^
testsecond: second_$(TIMER).o secondtst.o
@echo "[INFO] : TIMER value: $(TIMER) (given by make.inc)"
$(LOADER) $(LOADOPTS) -o [email protected] $^
testdsecnd: dsecnd_$(TIMER).o dsecndtst.o
@echo "[INFO] : TIMER value: $(TIMER) (given by make.inc)"
$(LOADER) $(LOADOPTS) -o [email protected] $^
testieee: tstiee.o
$(LOADER) $(LOADOPTS) -o [email protected] $^
testversion: ilaver.o LAPACK_version.o
$(LOADER) $(LOADOPTS) -o [email protected] $^
run: all
./testlsame
./testslamch
./testdlamch
./testsecond
./testdsecnd
./testieee
./testversion
clean: cleanobj cleanexe cleantest
cleanobj:
rm -f *.o
cleanexe:
rm -f test*
cleantest:
rm -f core
.SUFFIXES: .o .f
.f.o:
$(FORTRAN) $(OPTS) -c -o [email protected] $<
slamch.o: slamch.f ; $(FORTRAN) $(NOOPT) -c -o [email protected] $<
dlamch.o: dlamch.f ; $(FORTRAN) $(NOOPT) -c -o [email protected] $<
私が自作を試みたが、それは働いていない:
brew install lapack
Error: No available formula with the name "lapack"
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
This formula was found in a tap:
homebrew/science/lapack-manpages
To install it, run:
brew install homebrew/science/lapack-manpages
をしかし、たとえbrew install homebrew/science/lapack-manpages
が機能していません。 ..
Homebrew 0.9.9 (git revision 1158; last commit 2016-07-20) Homebrew/homebrew-core (git revision f7372; last commit 2016-07-20)