- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Iam having trouble with the icc math.h file and compiling with icc. It seems not to be able to find the math.h file and creates errors as shown.
I used the command
./test1.sh 1> out.txt 2> err46.txt.
I also used the -H compiler command and it seems to be pulling the math.h file in, but stillI am getting errors as shown in err46.txt.
At one point I actually put the Intel icc version of math.h in the same directory as test3.c and it still did not find it.
I need help on this one. Why can it not find my math.h file.
Again, this works perfectly under gcc, but creates the error output file err46.txt when I put in icc in place of gcc.
Any help appreciated. Thanks in advance.
Newport_j
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi newport_j,
I see errors like the following:
test3.c(6): error: identifier "ENV_DEF" is undefined
void WEGprint( ENV_DEF *env, EIGEN_RAY *ray ){
^
test3.c(6): error: identifier "EIGEN_RAY" is undefined
void WEGprint( ENV_DEF *env, EIGEN_RAY *ray ){
^
Your source file has the following includes:
#include
#include
#include "math-complex.h"
I'm guessing that these #defines must be coming from math-complex.h (I don't think these are standard predefined macros). Can you attach that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
file isthe root cause of the compilation errors.
Best regards,
Sergey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Okay, here my modified source. Please place envstructdefs.h in the same directory as test4.c, likewise for test1.sh.
Run the command
./test1.sh 1> out.txt 2>err64.txt
you should get what I have in err63.txt. The only error will be in expected an expression.
Any help appreciated. Thanks in advance.
Newport_j
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
blhewitt@orcslx112:~/quad/u103271$ ./test1.sh
. /usr/include/stdlib.h
.. /usr/include/features.h
... /usr/include/bits/predefs.h
... /usr/include/sys/cdefs.h
.... /usr/include/bits/wordsize.h
... /usr/include/gnu/stubs.h
.... /usr/include/bits/wordsize.h
.... /usr/include/gnu/stubs-32.h
.. /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
.. /usr/include/bits/waitflags.h
.. /usr/include/bits/waitstatus.h
... /usr/include/endian.h
.... /usr/include/bits/endian.h
.... /usr/include/bits/byteswap.h
..... /usr/include/bits/wordsize.h
.. /usr/include/sys/types.h
... /usr/include/bits/types.h
.... /usr/include/bits/wordsize.h
.... /usr/include/bits/typesizes.h
... /usr/include/time.h
... /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
... /usr/include/sys/select.h
.... /usr/include/bits/select.h
..... /usr/include/bits/wordsize.h
.... /usr/include/bits/sigset.h
.... /usr/include/time.h
.... /usr/include/bits/time.h
... /usr/include/sys/sysmacros.h
... /usr/include/bits/pthreadtypes.h
.... /usr/include/bits/wordsize.h
.. /usr/include/alloca.h
... /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
. /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/math.h
.. /usr/include/math.h
... /usr/include/bits/huge_val.h
... /usr/include/bits/huge_valf.h
... /usr/include/bits/huge_vall.h
... /usr/include/bits/inf.h
... /usr/include/bits/nan.h
... /usr/include/bits/mathdef.h
.... /usr/include/bits/wordsize.h
... /usr/include/bits/mathcalls.h
... /usr/include/bits/mathcalls.h
... /usr/include/bits/mathcalls.h
test4.c(3): catastrophic error: cannot open source file "math-complex.h"
#include "math-complex.h"
^
Where is math-complex.h? Can you attach it?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
blhewitt:~/quad/u103271$ ./test1.sh
. /usr/include/stdlib.h
.. /usr/include/features.h
... /usr/include/bits/predefs.h
... /usr/include/sys/cdefs.h
.... /usr/include/bits/wordsize.h
... /usr/include/gnu/stubs.h
.... /usr/include/bits/wordsize.h
.... /usr/include/gnu/stubs-32.h
.. /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
.. /usr/include/bits/waitflags.h
.. /usr/include/bits/waitstatus.h
... /usr/include/endian.h
.... /usr/include/bits/endian.h
.... /usr/include/bits/byteswap.h
..... /usr/include/bits/wordsize.h
.. /usr/include/sys/types.h
... /usr/include/bits/types.h
.... /usr/include/bits/wordsize.h
.... /usr/include/bits/typesizes.h
... /usr/include/time.h
... /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
... /usr/include/sys/select.h
.... /usr/include/bits/select.h
..... /usr/include/bits/wordsize.h
.... /usr/include/bits/sigset.h
.... /usr/include/time.h
.... /usr/include/bits/time.h
... /usr/include/sys/sysmacros.h
... /usr/include/bits/pthreadtypes.h
.... /usr/include/bits/wordsize.h
.. /usr/include/alloca.h
... /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/stddef.h
. /site/jf/cts2/tools/compiler/cpro/Compiler/12.1/293/composer_xe_2011_sp1.9.293/compiler/include/math.h
.. /usr/include/math.h
... /usr/include/bits/huge_val.h
... /usr/include/bits/huge_valf.h
... /usr/include/bits/huge_vall.h
... /usr/include/bits/inf.h
... /usr/include/bits/nan.h
... /usr/include/bits/mathdef.h
.... /usr/include/bits/wordsize.h
... /usr/include/bits/mathcalls.h
... /usr/include/bits/mathcalls.h
... /usr/include/bits/mathcalls.h
. envstructdefs.h
/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5.2/../../../crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
Which is to be expected since there is no main.
One thing I noticed was that when you printed out your signon, Newport_j, the compiler said it was in gcc 4.2 compatibility mode, but the default gcc on Ubuntu 11.04 is gcc 4.5. I wonder if you're unintentionally pointing to an old gcc install that might be having problems. What do you get when you run "gcc --version"? Can you also add -dryrun to your icc command line, and send me the output from that?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have solved the other issuesin the otherthreads. This is the only one remaining. One issue that I had was that I still had the Cilk Arts Cilk++ installed and $PATH pointed driectly to it. I changed my path and everything was okay.
Can I just remove the Cilk Arts directory and its contents or are their some system files that must be changed back? The only issue now is the expected an expression error, this is the only issue or unsolved thread remaining. Everything else is fine.
Is there some basic program (a canary in a coal mine) that will check the install. I thought it was here:
Itried the Makefile in
/opt/intel/composer_xe_20111_sp1.9.293/Samples/en_US/C++/cilk_samples
and got
icpc -O2 -I. -c -o linear-recurrence.o linear_recurrence.cpp
can't open file linear-reccurence.o for write
compilation aborted for linear-recurrence.cpp (code 1)
make *** [linear-reccurence.o] Error 1
I do not believe this should happen. Mypath is okay. the is no linear-recurrence.o so it fails.I know the directory cannot be written to, but it said in the Intel Cilk++ manual the trythe makefileand I did and got the above.
I just need a simple program to check theinstall. Maybe I should unistall this Intel Cilkversion and reinstall it.
I did a gcc --version and I got
gcc (Ubuntu/linaro 4.5.2-8ubuntu4) 4.5.2
So I believe that I am okay there.
Newport_j
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have added the command -dryrun to the icc command and attached the output.
It shows what version of gcc I am using also.
Hope this helps. It is the final problem on theIntel Cilk++update install.
Should I just uninstall and reinstall the Intel Cilk++ updated version?
I used an earlier version of this in late 2010 (abandoned for reasons explained earlier) and do not remember anything like these problems.
Thanks in advance.
Newport_j
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Okay,I just got a post from another Intel Forum responder and I think I know what the problem is. I just am unsure of the solution.
I amcopying andpasting his post:
Hello,
thank you for the comprehensive information you provided! Unfortunately not all attachments can be opened.
Anyways, I think I've an idea:
You were building an own GCC version which has been configured for installation prefix "/home/build/32/local/cilk" but in the end you're using GCC from "/home/james/Desktop/cilk". If you have moved (or copied & removed) the location there might be some pointers to the old location not being updated. Our compiler depends on those to find the correct paths for libraries & include files.
Could you please rebuild with using the final installation prefix without moving/copying anything around?
To make sure that a setup like yours works with our compiler I've also compiled my own GCC compiler (same version: 4.2.4). Only "gcc" had to be in $PATH so our compiler can find the correct libraries & header files automatically.
Best regards,
Georg Zitzlsberger
We agree on the problem, but not on the solution. I just modifyed the $PATH sohome/james/Desktop/cilk was no longer in the path. It solved the stdio.h being present and causing errorsproblem. I still had a problem withit not findong the icc math.h file.
I do not understand what his solution is. I asked a colleague foran interpretation andhe said thatI forgot to complete the installby not using the "make install" command. I do not think so, that is how I install shareware, butIntel offers a menu when it installs software whichwalks you through the complete proecess. So where did I go wrong on the install?
I think more needs to be done than by just changing the $PATH. How about this.
1. Unistall my Cilk Arts version.I am not sure how. DoI just remove the cilk directory and all of it subdirectries or do I have an uninstall command that can do the trick. The firstoption is the easiest if whenI installed the Cilk Arts Cilk++ compiler,I did not change any system files. Either way theCilk Arts compiler has got to go.
2. Uninstall my current version of the Intel Cilk++ compiler usingits uninstall command.
3. Reinstall the current version of the Intel Cilk compiler without any previousCilk Arts install on the hardrive at all and follow the menu.
4.Begin regular work.
Is this the best way? I think it solves all of my issues. It also gets rid of once and for all any previouos"cilks" installed.
Any help appreciated, thanks in advance.
Newport_j
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After the new install many problems were solved. Unfortunately some remain, but I think that I am on to a solution and I need to ask a question(s).
Of all the functions that do not compile, I noticed thta they always gagged on math functions sin,coslog10 etc.
However, some of the functions in my program that have math function do not complain and comppile. Here is what I noticed. please remember this works for gcc, icc not so much.
The header section of the files have the following two files.
math.h
math-complex.h
In that order. In some files they may be separated by another intervening header file such as
math.h
stdib.h
math-complex.h
, but they always have the combination of math.h followed by math-complex.h. When I ussed the -H command line option, I noticed that both math.h files (gcc and icc) were pulled in by the icc compiler.
However, the math.h for gcc was pulled in by using the math-complex.h. WhenI say pulled inI am looking for the directory access and the file in thta directory.
WhenI compile with gcc this does not happen.
Now my question is:
Is there an icc version of math-complex.h ?
If there is not what is its equivalent.complex.h.
Any help appreciated. Thanks in advance.
Newport_j
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Okay, I think thatI have found it. math-complex.h is a creation of our programmers here it is a shortcut. It is sort of a combination of math.h and complex.h. I will take it out and substitue complex.h. We already have math.h separately defined.
My question now does icc have its own version of complex.h, like it has its own version of math.h?
That would make things clearer.
Newport_j
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page