Skip to content

Building dynamic arch with interface64 failed on amd64 #44

Closed

Description

@grisuthedragon

I want to compile a current git checkout of OpenBLAS with DYNAMIC_ARCH=1 and INTERFACE64= 1on amd64 (CentOS 5.5, GCC 4.5.1) and it throws the following error. For INTERACE64=0 it works fine. The case DYNAMIC_ARCH=0 and INTERFACE64=1 works too.

......
cp Makefile.conf Makefile.conf_last
cp config.h config_last.h
make -j 16 -C kernel commonlibs || exit 1
make[1]: Entering directory /root/install/OpenBLAS/kernel' gcc -c -O2 -DEXPRECISION -m128bit-long-double -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DDYNAMIC_ARCH -DSMP_SERVER -DUSE_OPENMP -DMAX_CPU_NUMBER=24 -DASMNAME=lsame -DASMFNAME=lsame_ -DNAME=lsame_ -DCNAME=lsame -DCHAR_NAME=\"lsame_\" -DCHAR_CNAME=\"lsame\" -DTS= -I.. -DF_INTERFACE ../kernel/x86_64/lsame.S -o lsame.o gcc -c -O2 -DEXPRECISION -m128bit-long-double -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DDYNAMIC_ARCH -DSMP_SERVER -DUSE_OPENMP -DMAX_CPU_NUMBER=24 -DASMNAME=scabs1 -DASMFNAME=scabs1_ -DNAME=scabs1_ -DCNAME=scabs1 -DCHAR_NAME=\"scabs1_\" -DCHAR_CNAME=\"scabs1\" -DTS= -I.. -DCOMPLEX -UDOUBLE -DF_INTERFACE ../kernel/x86_64/cabs.S -o scabs1.o gcc -c -O2 -DEXPRECISION -m128bit-long-double -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DDYNAMIC_ARCH -DSMP_SERVER -DUSE_OPENMP -DMAX_CPU_NUMBER=24 -DASMNAME=dcabs1 -DASMFNAME=dcabs1_ -DNAME=dcabs1_ -DCNAME=dcabs1 -DCHAR_NAME=\"dcabs1_\" -DCHAR_CNAME=\"dcabs1\" -DTS= -I.. -DCOMPLEX -DDOUBLE -DF_INTERFACE ../kernel/x86_64/cabs.S -o dcabs1.o gcc -c -O2 -DEXPRECISION -m128bit-long-double -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DDYNAMIC_ARCH -DSMP_SERVER -DUSE_OPENMP -DMAX_CPU_NUMBER=24 -DASMNAME=qconjg -DASMFNAME=qconjg_ -DNAME=qconjg_ -DCNAME=qconjg -DCHAR_NAME=\"qconjg_\" -DCHAR_CNAME=\"qconjg\" -DTS= -I.. -DCOMPLEX -DXDOUBLE -DF_INTERFACE ../kernel/x86_64/qconjg.S -o qconjg.o gcc -c -O2 -DEXPRECISION -m128bit-long-double -fopenmp -Wall -m64 -DF_INTERFACE_GFORT -fPIC -DDYNAMIC_ARCH -DSMP_SERVER -DUSE_OPENMP -DMAX_CPU_NUMBER=24 -DASMNAME=qcabs1 -DASMFNAME=qcabs1_ -DNAME=qcabs1_ -DCNAME=qcabs1 -DCHAR_NAME=\"qcabs1_\" -DCHAR_CNAME=\"qcabs1\" -DTS= -I.. -DCOMPLEX -DXDOUBLE -DF_INTERFACE ../kernel/x86_64/cabs.S -o qcabs1.o ar -ru ../libopenblasp-r0.1alpha2.1.a lsame.o scabs1.o dcabs1.o qconjg.o qcabs1.o make[1]: Leaving directory/root/install/OpenBLAS/kernel'
for d in PRESCOTT CORE2 PENRYN DUNNINGTON NEHALEM OPTERON OPTERON_SSE3 BARCELONA ATOM NANO ;
do make -j 16 GOTOBLAS_MAKEFILE= -C kernel TARGET_CORE=$d kernel || exit 1 ;
done
make: invalid option -- D
make: invalid option -- U
make: invalid option -- E
make: invalid option -- 6
make: invalid option -- 4
Usage: make [options] [target] ...
Options:
-b, -m Ignored for compatibility.
-B, --always-make Unconditionally make all targets.
-C DIRECTORY, --directory=DIRECTORY
Change to DIRECTORY before doing anything.
-d Print lots of debugging information.
--debug[=FLAGS] Print various types of debugging information.
-e, --environment-overrides
Environment variables override makefiles.
-f FILE, --file=FILE, --makefile=FILE
Read FILE as a makefile.
-h, --help Print this message and exit.
-i, --ignore-errors Ignore errors from commands.
-I DIRECTORY, --include-dir=DIRECTORY
Search DIRECTORY for included makefiles.
-j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg.
-k, --keep-going Keep going when some targets can't be made.
-l [N], --load-average[=N], --max-load[=N]
Don't start multiple jobs unless load is below N.
-L, --check-symlink-times Use the latest mtime between symlinks and target.
-n, --just-print, --dry-run, --recon
Don't actually run any commands; just print them.
-o FILE, --old-file=FILE, --assume-old=FILE
Consider FILE to be very old and don't remake it.
-p, --print-data-base Print make's internal database.
-q, --question Run no commands; exit status says if up to date.
-r, --no-builtin-rules Disable the built-in implicit rules.
-R, --no-builtin-variables Disable the built-in variable settings.
-s, --silent, --quiet Don't echo commands.
-S, --no-keep-going, --stop
Turns off -k.
-t, --touch Touch targets instead of remaking them.
-v, --version Print the version number of make and exit.
-w, --print-directory Print the current directory.
--no-print-directory Turn off -w, even if it was turned on implicitly.
-W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
Consider FILE to be infinitely new.
--warn-undefined-variables Warn when an undefined variable is referenced.

This program built for x86_64-redhat-linux-gnu
Report bugs to bug-make@gnu.org
make[1]: Entering directory /root/install/OpenBLAS/kernel' ../Makefile.system:47: ../Makefile_kernel.conf: No such file or directory make[1]: *** No rule to make target../Makefile_kernel.conf'. Stop.
make[1]: Leaving directory `/root/install/OpenBLAS/kernel'
make: *** [libs] Error 1

My Makefile.rule contains the following:VERSION = 0.1alpha2.1

DYNAMIC_ARCH = 1
CC = gcc
FC = gfortran
BINARY=64
USE_OPENMP = 1
NUM_THREADS = 24
INTERFACE64 = 1
ifeq ($(DEBUG), 1)
COMMON_OPT += -g
else
COMMON_OPT += -O2
endif
COMMON_PROF = -pg

I realized this error a few weeks ago but I do not care about it, but now I need a working version.

Activity

  1. ghost assigned on Jul 13, 2011
  2. xianyi commented on Jul 13, 2011

    @xianyi
    Collaborator

    Hi,

    I fixed this bug on 0.1 alpha2.2 version.

    Thanks
    Xianyi Zhang

  3. grisuthedragon commented on Jul 13, 2011

    @grisuthedragon
    ContributorAuthor

    Hi,

    It seems to work fine, thanks a lot.

    regards
    Martin

  4. added a commit that references this issue on Apr 10, 2020
  5. added a commit that references this issue on Dec 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions