POV-Ray : Newsgroups : povray.unix : Compiling with icc 12.1 Server Time
23 Dec 2024 10:40:48 EST (-0500)
  Compiling with icc 12.1 (Message 1 to 10 of 26)  
Goto Latest 10 Messages Next 10 Messages >>>
From: jhu
Subject: Compiling with icc 12.1
Date: 15 Dec 2011 03:35:00
Message: <web.4ee9affcb974ef0dd19b0ec40@news.povray.org>
Running Debian 7. I can get Povray 3.7 to compile with gcc 4.6. I'm having
issues with icc 12.1 however.


Libraries
---------
checking whether to link with cygwin DLL... no
checking whether to enable static linking... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for boostlib >= 1.37... yes
checking whether the Boost::Thread library is available... no
configure: error: cannot find a suitable boost thread library

Probably some configure option I'm missing. Halp!


Post a reply to this message

From: clipka
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 05:46:56
Message: <4ee9d020$1@news.povray.org>
Am 15.12.2011 09:29, schrieb jhu:
> Running Debian 7. I can get Povray 3.7 to compile with gcc 4.6. I'm having
> issues with icc 12.1 however.
>
>
> Libraries
> ---------
> checking whether to link with cygwin DLL... no
> checking whether to enable static linking... no
> checking for the pthreads library -lpthreads... no
> checking whether pthreads work without any flags... no
> checking whether pthreads work with -Kthread... no
> checking whether pthreads work with -kthread... no
> checking for the pthreads library -llthread... no
> checking whether pthreads work with -pthread... yes
> checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
> checking if more special flags are required for pthreads... no
> checking for boostlib>= 1.37... yes
> checking whether the Boost::Thread library is available... no
> configure: error: cannot find a suitable boost thread library
>
> Probably some configure option I'm missing. Halp!

Did you add the path to the boost library to the linker path (LD_PATH or 
whatever it's caled)?

IRC there are also some issues with icpc regarding the header files & 
runtime libraries it is compatible with.

I guess you did remember to "source" the proper script file to set the 
icpc environment stuff, so I won't mention that. (Uh, I just did - sorry 
;-))


BTW, I'd like to ask two favors of you:

- Can you please take notes of all build problems you encounter, and 
possibly how you solved them (either yourself or with the aid of 
others)? That would help us improve the INSTALL docs.

- Once you get it to compile, can you please run some extensive testing 
with photons scenes (for example the "balcony" and "optics" advanced 
sample scenes)? On my Linux system I still get some very obscure 
sporadic segfaults with icpc-compiled POV-Ray when rendering photons scenes.


Post a reply to this message

From: Le Forgeron
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 07:50:03
Message: <4ee9ecfb$1@news.povray.org>
Le 15/12/2011 11:46, clipka a écrit :
> Am 15.12.2011 09:29, schrieb jhu:
>> Running Debian 7. I can get Povray 3.7 to compile with gcc 4.6. I'm
>> having
>> issues with icc 12.1 however.
>>
>>
>> Libraries
>> ---------
>> checking whether to link with cygwin DLL... no
>> checking whether to enable static linking... no
>> checking for the pthreads library -lpthreads... no
>> checking whether pthreads work without any flags... no
>> checking whether pthreads work with -Kthread... no
>> checking whether pthreads work with -kthread... no
>> checking for the pthreads library -llthread... no
>> checking whether pthreads work with -pthread... yes
>> checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
>> checking if more special flags are required for pthreads... no
>> checking for boostlib>= 1.37... yes
>> checking whether the Boost::Thread library is available... no
>> configure: error: cannot find a suitable boost thread library
>>
>> Probably some configure option I'm missing. Halp!
> 
> Did you add the path to the boost library to the linker path (LD_PATH or
> whatever it's caled)?
> 
> IRC there are also some issues with icpc regarding the header files &
> runtime libraries it is compatible with.
> 
> I guess you did remember to "source" the proper script file to set the
> icpc environment stuff, so I won't mention that. (Uh, I just did - sorry
> ;-))
> 


From my personal play with icpc, you need to compile a dedicated version
of boost libraries for it (you cannot reuse the one installed for gcc in
/usr/lib : the headers are fine, but the libraries are not)

Then it's only a matter of setting the environment with the icc script
to compile. And it run benchmark in very good time (~130 s vs ~155 s)

More technical details if still needed tonight (about 6 hours away),
once I'm back on the actual system with icc. (but I'm not sure it was in
the 12 serie or not)


Post a reply to this message

From: Le Forgeron
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 12:38:06
Message: <4eea307e$1@news.povray.org>
Le 15/12/2011 13:50, Le_Forgeron nous fit lire :
> More technical details if still needed tonight (about 6 hours away),
> once I'm back on the actual system with icc. (but I'm not sure it was in
> the 12 serie or not)

Yep, 12.0.5

Had to install in /opt/intel a version of boost (from tar ball, compiled
& installed with icc/icpc)

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

  $ ./configure COMPILED_BY="the name which matter"
--disable-io-restrictions --with-boost-libdir=/opt/intel/lib
--with-boost-thread=boost_thread --with-boost=/opt/intel CC=icc CXX=icpc
--disable-debug



--disable-io-restrictions  : just my personal taste.


Post a reply to this message

From: jhu
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 13:30:01
Message: <web.4eea3c56dc656ac1d19b0ec40@news.povray.org>
Ok, started compiling boost using icc. There are a bunch of libs that won't
compile, one of which is the thread lib:

[jhu@PhenomIIx6:~/temp/boost_1_47_0/libs/thread/build]$ ~/temp/bo*/bjam
--toolset=intel-linux

....patience...
....found 513 targets...
....updating 6 targets...
common.mkdir ../../../bin.v2/libs/thread/build/intel-linux-linux/debug
common.mkdir
.../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi
common.mkdir
.../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi/pthread
intel-linux.compile.c++
.../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi/pthread/thread.o
.../../../boost/smart_ptr/detail/shared_count.hpp(321): error: copy constructor
for class "boost::detail::shared_count" may not have a parameter of type
"boost::detail::shared_count"
      shared_count(shared_count && r): pi_(r.pi_) // nothrow
                   ^

.../../../boost/smart_ptr/detail/shared_count.hpp(321): error: expected a ")"
      shared_count(shared_count && r): pi_(r.pi_) // nothrow
                                ^
....etc, etc.

If I use the gcc toolset, it compiles just fine. Halp!


Post a reply to this message

From: clipka
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 13:36:52
Message: <4eea3e44$1@news.povray.org>
Am 15.12.2011 19:28, schrieb jhu:
> Ok, started compiling boost using icc. There are a bunch of libs that won't
> compile, one of which is the thread lib:
>
> [jhu@PhenomIIx6:~/temp/boost_1_47_0/libs/thread/build]$ ~/temp/bo*/bjam
> --toolset=intel-linux
>
> .....patience...
> .....found 513 targets...
> .....updating 6 targets...
> common.mkdir ../../../bin.v2/libs/thread/build/intel-linux-linux/debug
> common.mkdir
> ..../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi
> common.mkdir
> ..../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi/pthread
> intel-linux.compile.c++
>
..../../../bin.v2/libs/thread/build/intel-linux-linux/debug/threading-multi/pthread/thread.o
> ..../../../boost/smart_ptr/detail/shared_count.hpp(321): error: copy constructor
> for class "boost::detail::shared_count" may not have a parameter of type
> "boost::detail::shared_count"
>        shared_count(shared_count&&  r): pi_(r.pi_) // nothrow
>                     ^
>
> ..../../../boost/smart_ptr/detail/shared_count.hpp(321): error: expected a ")"
>        shared_count(shared_count&&  r): pi_(r.pi_) // nothrow
>                                  ^
> .....etc, etc.
>
> If I use the gcc toolset, it compiles just fine. Halp!


Try an earlier version of boost (1.45 is recommended).


Post a reply to this message

From: Le Forgeron
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 14:04:58
Message: <4eea44da$1@news.povray.org>
Le 15/12/2011 11:46, clipka nous fit lire :
> - Once you get it to compile, can you please run some extensive testing
> with photons scenes (for example the "balcony" and "optics" advanced
> sample scenes)? On my Linux system I still get some very obscure
> sporadic segfaults with icpc-compiled POV-Ray when rendering photons
> scenes.

Done more than one hundred renders of optics.pov, with icpc 12.0.5, no
problem. (ulimit -c unlimited, no core dumped.)

 (i=0;  while [ $i -le 100 ]; do povrayicpc optics.pov -w800 -h600
+a0.3; i=$i+1; done )


Post a reply to this message

From: jhu
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 14:35:01
Message: <web.4eea4b6cdc656ac1d19b0ec40@news.povray.org>
Le_Forgeron <jgr### [at] freefr> wrote:
> Le 15/12/2011 13:50, Le_Forgeron nous fit lire :
> > More technical details if still needed tonight (about 6 hours away),
> > once I'm back on the actual system with icc. (but I'm not sure it was in
> > the 12 serie or not)
>
> Yep, 12.0.5
>
> Had to install in /opt/intel a version of boost (from tar ball, compiled
> & installed with icc/icpc)
>
>   $ source /opt/intel/bin/compilervars.sh intel64
>
>   $ ./configure COMPILED_BY="the name which matter"
> --disable-io-restrictions --with-boost-libdir=/opt/intel/lib
> --with-boost-thread=boost_thread --with-boost=/opt/intel CC=icc CXX=icpc
> --disable-debug
>
>
>
> --disable-io-restrictions  : just my personal taste.

Aarrrgh!

Ok, just downloaded boost 1.45, compiled with icc, installed into /opt/intel.

I run the command you gave (copy and paste) and...

Libraries
---------
checking whether to link with cygwin DLL... no
checking whether to enable static linking... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for boostlib >= 1.37... yes
checking whether the Boost::Thread library is available... no
configure: error: cannot find a suitable boost thread library


??? I don't understand why it can't find the libraries when I've explicitly
stated where they are?


Post a reply to this message

From: Le Forgeron
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 16:22:33
Message: <4eea6519@news.povray.org>
Le 15/12/2011 20:33, jhu nous fit lire :
> Le_Forgeron <jgr### [at] freefr> wrote:
>> Le 15/12/2011 13:50, Le_Forgeron nous fit lire :
>>> More technical details if still needed tonight (about 6 hours away),
>>> once I'm back on the actual system with icc. (but I'm not sure it was in
>>> the 12 serie or not)
>>
>> Yep, 12.0.5
>>
>> Had to install in /opt/intel a version of boost (from tar ball, compiled
>> & installed with icc/icpc)
>>
>>   $ source /opt/intel/bin/compilervars.sh intel64
>>
>>   $ ./configure COMPILED_BY="the name which matter"
>> --disable-io-restrictions --with-boost-libdir=/opt/intel/lib
>> --with-boost-thread=boost_thread --with-boost=/opt/intel CC=icc CXX=icpc
>> --disable-debug
>>
>>
>>
>> --disable-io-restrictions  : just my personal taste.
> 
> Aarrrgh!
> 
> Ok, just downloaded boost 1.45, compiled with icc, installed into /opt/intel.
> 
> I run the command you gave (copy and paste) and...
> 
> Libraries
> ---------
> checking whether to link with cygwin DLL... no
> checking whether to enable static linking... no
> checking for the pthreads library -lpthreads... no
> checking whether pthreads work without any flags... no
> checking whether pthreads work with -Kthread... no
> checking whether pthreads work with -kthread... no
> checking for the pthreads library -llthread... no
> checking whether pthreads work with -pthread... yes
> checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
> checking if more special flags are required for pthreads... no
> checking for boostlib >= 1.37... yes
> checking whether the Boost::Thread library is available... no
> configure: error: cannot find a suitable boost thread library
> 
> 
> ??? I don't understand why it can't find the libraries when I've explicitly
> stated where they are?
> 
> 
IIRC, the build of boost might not build everything by default.

my listing of /opt/intel/lib:
ia32                           libboost_prg_exec_monitor.so
intel64                        libboost_prg_exec_monitor.so.1.47.0
libboost_chrono.a              libboost_program_options.a
libboost_chrono.so             libboost_program_options.so
libboost_chrono.so.1.47.0      libboost_program_options.so.1.47.0
libboost_date_time.a           libboost_python.a
libboost_date_time.so          libboost_python.so
libboost_date_time.so.1.47.0   libboost_python.so.1.47.0
libboost_exception.a           libboost_random.a
libboost_filesystem.a          libboost_random.so
libboost_filesystem.so         libboost_random.so.1.47.0
libboost_filesystem.so.1.47.0  libboost_regex.a
libboost_graph.a               libboost_regex.so
libboost_graph.so              libboost_regex.so.1.47.0
libboost_graph.so.1.47.0       libboost_serialization.a
libboost_iostreams.a           libboost_serialization.so
libboost_iostreams.so          libboost_serialization.so.1.47.0
libboost_iostreams.so.1.47.0   libboost_signals.a
libboost_math_c99.a            libboost_signals.so
libboost_math_c99f.a           libboost_signals.so.1.47.0
libboost_math_c99f.so          libboost_system.a
libboost_math_c99f.so.1.47.0   libboost_system.so
libboost_math_c99l.a           libboost_system.so.1.47.0
libboost_math_c99l.so          libboost_test_exec_monitor.a
libboost_math_c99l.so.1.47.0   libboost_thread.a
libboost_math_c99.so           libboost_thread.so
libboost_math_c99.so.1.47.0    libboost_thread.so.1.47.0
libboost_math_tr1.a            libboost_unit_test_framework.a
libboost_math_tr1f.a           libboost_unit_test_framework.so
libboost_math_tr1f.so          libboost_unit_test_framework.so.1.47.0
libboost_math_tr1f.so.1.47.0   libboost_wave.a
libboost_math_tr1l.a           libboost_wave.so
libboost_math_tr1l.so          libboost_wave.so.1.47.0
libboost_math_tr1l.so.1.47.0   libboost_wserialization.a
libboost_math_tr1.so           libboost_wserialization.so
libboost_math_tr1.so.1.47.0    libboost_wserialization.so.1.47.0
libboost_prg_exec_monitor.a


Post a reply to this message

From: jhu
Subject: Re: Compiling with icc 12.1
Date: 15 Dec 2011 16:40:00
Message: <web.4eea682ddc656ac1d19b0ec40@news.povray.org>
But it's all there...

[jhu@PhenomIIx6:/opt/intel/lib]$ ls
intel64         libboost_program_options.so
libboost_date_time.a       libboost_program_options.so.1.45.0
libboost_date_time.so       libboost_random.a
libboost_date_time.so.1.45.0      libboost_random.so
libboost_exception.a       libboost_random.so.1.45.0
libboost_filesystem.a       libboost_random.so.1.47.0
libboost_filesystem.so       libboost_regex.a
libboost_filesystem.so.1.45.0      libboost_regex.so
libboost_graph.a       libboost_regex.so.1.45.0
libboost_graph.so       libboost_serialization.a
libboost_graph.so.1.45.0      libboost_serialization.so
libboost_math_c99.a       libboost_serialization.so.1.45.0
libboost_math_c99.so       libboost_signals.a
libboost_math_c99.so.1.45.0      libboost_signals.so
libboost_math_c99f.a       libboost_signals.so.1.45.0
libboost_math_c99f.so       libboost_system.a
libboost_math_c99f.so.1.45.0      libboost_system.so
libboost_math_c99l.a       libboost_system.so.1.45.0
libboost_math_c99l.so       libboost_system.so.1.47.0
libboost_math_c99l.so.1.45.0      libboost_test_exec_monitor.a
libboost_math_tr1.a       libboost_thread.a
libboost_math_tr1.so       libboost_thread.so
libboost_math_tr1.so.1.45.0      libboost_thread.so.1.45.0
libboost_math_tr1f.a       libboost_unit_test_framework.a
libboost_math_tr1f.so       libboost_unit_test_framework.so
libboost_math_tr1f.so.1.45.0      libboost_unit_test_framework.so.1.45.0
libboost_math_tr1l.a       libboost_wave.a
libboost_math_tr1l.so       libboost_wave.so
libboost_math_tr1l.so.1.45.0      libboost_wave.so.1.45.0
libboost_prg_exec_monitor.a      libboost_wserialization.a
libboost_prg_exec_monitor.so      libboost_wserialization.so
libboost_prg_exec_monitor.so.1.45.0  libboost_wserialization.so.1.45.0
libboost_program_options.a


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.