Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7956 Discussions

ERROR: Architecture is not defined. Accepted values: ia32, intel64

sharma__animesh
Beginner
1,830 Views

Dear Experts,

I have recently downloaded and installed parallel_studio_xe_2018_update1_cluster_edition for a single user on my linux environment (Debian 9.1). The installation was successful however when i try to set variables in the command line with:

 

 

 $HOME/intel/bin/iccvars.sh intel64

I get the following error:

Syntax: source daalvars.sh <arch>
Where <arch> is one of:
  ia32      - setup environment for IA-32 architecture
  intel64   - setup environment for Intel(R) 64 architecture

If the arguments to the sourced script are ignored (consult docs for
your shell) the alternative way to specify target is environment
variables COMPILERVARS_ARCHITECTURE or DAALVARS_ARCHITECTURE to pass
<arch> to the script.

ERROR: Architecture is not defined. Accepted values: ia32, intel64
ERROR: Architecture is not defined. Accepted values: ia32, intel64

ERROR: architecture is not defined. Accepted values: ia32, intel64

Syntax:
  source mklvars.sh <arch> [MKL_interface] [mod]

   <arch> must be one of the following
       ia32         : Setup for IA-32 architecture
       intel64      : Setup for Intel(R) 64 architecture

   mod (optional) - set path to Intel(R) MKL F95 modules

   MKL_interface (optional) - Intel(R) MKL programming interface for intel64
                              Not applicable without mod
       lp64         : 4 bytes integer (default)
       ilp64        : 8 bytes integer

If the arguments to the sourced script are ignored (consult docs for
your shell) the alternative way to specify target is environment
variables COMPILERVARS_ARCHITECTURE or MKLVARS_ARCHITECTURE to pass
<arch> to the script, MKLVARS_INTERFACE to pass <MKL_interface> and
MKLVARS_MOD to pass <mod>

ERROR: architecture is not defined. Accepted values: ia32, intel64
Syntax: ippvars.sh <arch> [-arch <arch>] [-platform <platform>]

  <arch> must be one of the following:
      ia32           : Set up for IA-32 target.
      intel64        : Set up for Intel(R)64 target.
  <platform> must be of the following:
      linux          : Set to Linux target.
      mac            : Set to Mac target.
      android        : Set to Android target.

If the arguments to the sourced script are ignored (consult docs
for your shell) the alternative way to specify target is environment
variables COMPILERVARS_ARCHITECTURE to pass <arch> to the script
and COMPILERVARS_PLATFORM to pass <platform>
/home/animeshs/intel/bin/iccvars.sh: 42: [: =: unexpected operator
/home/animeshs/intel/bin/iccvars.sh: 50: [: =: unexpected operator
/home/animeshs/intel/bin/iccvars.sh: 159: [: =: unexpected operator
/home/animeshs/intel/bin/iccvars.sh: 171: [: =: unexpected operator

 

Kindly help me know how to proceed?

Best regards,

Ani

0 Kudos
9 Replies
Viet_H_Intel
Moderator
1,830 Views

Can you try:

$source $HOME/intel/bin/compilervars.sh intel64

Thanks,

Viet

0 Kudos
sharma__animesh
Beginner
1,830 Views

That worked Viet, thanks :) However i am still not able to use the compiler, seems to be unable to "fork process:":


➜  openmp_samples make
Cleaning...
icc -c -O2 -std=c99 -wd3180 -qopenmp -o out/openmp_sample.o src/openmp_sample.c
icc: error #10103: can't fork process: Invalid argument
Makefile:35: recipe for target 'out/openmp_sample.o' failed
make: *** [out/openmp_sample.o] Error 1

The code it from openmp samples from intel.

Any suggestions to move forward will be very much appreciated :)

 

0 Kudos
Viet_H_Intel
Moderator
1,830 Views

 

Can you see if it works on "helloworld.c"?

$icc -O2 helloworld.c -c -o helloworld.o

 

 

 

 

0 Kudos
sharma__animesh
Beginner
1,830 Views

It is the same error:

icc -O2 helloworld.c -c -o helloworld.o
icc: error #10103: can't fork process: Invalid argument

turns out that simple icc invokation has same issue:


icc
icc: error #10103: can't fork process: Invalid argument

 

0 Kudos
Viet_H_Intel
Moderator
1,830 Views

I don't know what happened. You could try "$strace -f icc -O2 helloworld.c -c >& strace.txt to see why you get "Invalid argument"

0 Kudos
sharma__animesh
Beginner
1,830 Views

It says (attached full report):

execve("/home/animeshs/intel/compilers_and_libraries_2018.1.163/linux/bin/intel64/icc", ["icc", "-O2", "helloworld.c", "-c"], [/* 40 vars */]) = 0
brk(NULL)                               = 0xdf8000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)

could it be that installation has some prereqs which are not there?

 

0 Kudos
jimdempseyatthecove
Honored Contributor III
1,830 Views

Have you installed GCC? ICC uses the GNU C/C++ linker/librarian.

Jim Dempsey

0 Kudos
Vladimir_P_1234567890
1,830 Views

sharma, animesh wrote:

Any suggestions to move forward will be very much appreciated :)

Hello, if you want to move forward try to use bash:)

It looks that you use dash. In theory icc should work under dash but as far as I remember there should be some additional steps to setup bash compatible-environment to dash-compatible environment.

--Vladimir

0 Kudos
sharma__animesh
Beginner
1,829 Views

Yes Jim, there is GCC in the system and it works:

animeshs@DMED7596:~/ray$ gcc helloworld.c
animeshs@DMED7596:~/ray$ ./a.out
hello

It can also compile openmpi based program https://github.com/sebhtml/ray flawlessly. It still takes a lot of time, so the reason i wanted to try out intel compiler is to check if i do get any speed advantage :)

Yes Vladimir, it is ZSH actually :) But i tried your suggestion of bash without much success:

animeshs@DMED7596:~/ray$ icc helloworld.c
icc: error #10103: can't fork process: Invalid argument

I suspect some issue with how icc is calling ld, but no idea since cpp is not what i know much of for sure... 

0 Kudos
Reply