Dolphin, the GameCube and Wii emulator - Forums
icc and optimized builds under Linux - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: Development Discussion (https://forums.dolphin-emu.org/Forum-development-discussion)
+--- Thread: icc and optimized builds under Linux (/Thread-icc-and-optimized-builds-under-linux)



icc and optimized builds under Linux - ccox421 - 02-14-2011

Hi,

Is there a way (and a gain) to use icc to compile dolphin under linux?

Otherwise, is there a way to make "optimized" builds (like Lectrode's) for linux?

Thx,
CC


RE: icc and optimized builds under Linux - Bill F - 02-15-2011

Intel has a separate version of ICC for Linux.
Switching from GCC to it probably is easier than using ICC in VS.
I think on Linux you can use a free non-commercial version of ICC.

You can find more info here.
http://software.intel.com/en-us/articles/intel-compilers/

Down at the bottom of this page there is the link for non-commercial Linux tools.
http://software.intel.com/en-us/articles/intel-software-evaluation-center/



RE: icc and optimized builds under Linux - ccox421 - 02-17-2011

Indeed, there is a non-commercial free version of icc. I tried to compile with icc and icpc by simply modifying the compiler links in CMakeCache.txt, but there are a lot of warning during the compilation. I tested the version compiled with icc, and I have only a black screen, without error message or anything. The sound and wiimote work correctly, and I was able to access a 3D part of a game, and the 3D seems to work correctly (in color), and much faster than with gcc...

If someone has any idea how to compile correctly the code, it would be great!



RE: icc and optimized builds under Linux - Bill F - 02-17-2011

You should look at the windows compile guides for ICC. If you got it to actually compile and link then you are pretty much set almost. That is good to hear that you didn't need to change any code this time.

If you look at the guides they mention that you need to only use ICC for certain packages. I think you need to disable ICC on the video common on OpenGL packages. However I could be wrong about this. (things change)
I guess you would just change the make command for those particular parts to use GCC, and the rest ICC. Or you could try turning optimization off for those parts using the compiler flags. In Visual studio you change this on a per package basis, but with the make linux version I have no idea how that is setup.


RE: icc and optimized builds under Linux - ccox421 - 02-17-2011

Hmmm, it does not look very simple... and I am not able to find the list of files which need to be compiled with gcc... Any help is welcome here...




RE: icc and optimized builds under Linux - ccox421 - 02-17-2011

Hi,

I finally succeeding in compiling dolphin under linux with Intel compilers. apparently, Main.cpp in Core/DolphinWX does not work correctly in compiling with icpc, so I had to compile it with g++.

Here is the complete method in command line:

svn co http://dolphin-emu.googlecode.com/svn/trunk/ dolphin-emu-read-only
cd dolphin-emu-read-only
mkdir Build
cd Build
cmake ..

Then edit CMakeCache.txt, and replace /usr/bin/gcc by the path to icc and /usr/bin/c++ by the path to icpc. It is also possible to change the optimization flags at this moment.

Then edit Source/Core/DolphinWX/CMakeFiles/dolphin-emu.dir/build.make and find the lines begining with "Source/Core/DolphinWX/CMakeFiles/dolphin-emu.dir/Src/Main.cpp". Select the whole "section" about Main.cpp and replace here the path to icpc (/usr/local/bin/icpc for me) by /usr/bin/g++ .

Finish by
make
make install

If anyone could fix Main.cpp, it would be great!