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

Compilation aborted for myFile.cpp (code 2) ?

eesutton
Beginner
2,252 Views
I am getting started with the ICC for the first time using the 30-day eval. I *really* like all the new warnings and remarks that gcc never told me about, however, I can not figure out why compilation is aborting?


src/videostreamer.cpp(39): warning #177: variable "DebugDumpPullFrameMax" was declared but never referenced
const int DebugDumpPullFrameMax = 32;
^

compilation aborted for src/videostreamer.cpp (code 2)
make: *** [obj/videostreamer.o] Error 2


Target:

Red Hat Enterprise Linux 5.2 32-bit
ICC Version: 30-Day eval 11.1
Objective: To benchmark a Qt C++ project that decodes viceo built with gcc versus icc.
Usage: Ran icvars.sh ia32 then added /opt/intel/Compiler/11.1/073/bin/ia32 to my path.

Thanks in advance for any tips or suggestions,

-Ed

0 Kudos
7 Replies
Brandon_H_Intel
Employee
2,252 Views
Compilation shouldn't abort for a warning. Can you send us your full output log?

Is it possible that you can compile src/videostreamer.cpp outside the makefile at the command line and reproduce the error?

And is this from compiling the project found at http://code.google.com/p/pfcfnm/?
0 Kudos
JenniferJ
Moderator
2,252 Views
did you use "-Werror" option? it means to treat all warnings aserrors.

that will make the compiler abort.


Jennifer
0 Kudos
eesutton
Beginner
2,252 Views
No, I had removed it to get as far as I did.

I should double-check though. Thanks for your help.

-Ed

0 Kudos
eesutton
Beginner
2,252 Views
>And is this from compiling the project found at http://code.google.com/p/pfcfnm/?

No, it is not but it appears to be an intersting project.

I still need to try to compile the single file. Where is the output log file named and found? Is this something that has to be turned on or just a capture of the command line output?

Thank you for your help,

-Ed
0 Kudos
JenniferJ
Moderator
2,252 Views
usually your build script will create the log file. the icc does not save one.
Find the script that calls the icpc to see the full compilation options.

did you try to compile just "src/videostreamer.cpp" file from a shell?


Jennifer
0 Kudos
eesutton
Beginner
2,252 Views
The compile command looks like:

icpc -c -wd654,1572 -m32 -O3 -march=pentium4 -march=core2 -mmmx -msse -msse2 -mfpmath=sse -fomit-frame-pointer -pthread -wd654,1572 -m32 -O3 -march=pentium4 -march=core2 -mmmx -msse -msse2 -mfpmath=sse -fomit-frame-pointer -pthread -Wall -Wextra -Wformat=2 -Wpointer-arith -Wcast-align -Wcast-qual -Wconversion -fno-common -Wunused-variable -Wunused-value -Wmissing-braces -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-include-dirs -Wparentheses -Wredundant-decls -Wreturn-type -Wsign-compare -Wstack-protector -Wunused-function -Wunused-label -Wunused-parameter -Wvolatile-register-var -O2 -Wno-non-virtual-dtor -D_REENTRANT -fPIC -DENABLE_FNAME_MODES -D__unix__ -D__GCC__ -DTIXML_USE_STL -DRELEASE -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/qtsdk-2010.01/qt/mkspecs/linux-icc -I. -I/opt/qtsdk-2010.01/qt/include/QtCore -I/opt/qtsdk-2010.01/qt/include/QtNetwork -I/opt/qtsdk-2010.01/qt/include/QtGui -I/opt/qtsdk-2010.01/qt/include/QtXml -I/opt/qtsdk-2010.01/qt/include -I../include -I../common/include -I../common/externals/include -Isrc -Isrc/tinyxml -Iobj -o obj/videostreamer.o src/videostreamer.cpp

Output:

icpc: command line warning #10121: overriding '-marchpentium4' with '-marchcore2'
icpc: command line warning #10120: overriding '-marchcore2' with '-msse'
icpc: command line warning #10120: overriding '-msse' with '-msse2'
icpc: command line warning #10159: invalid argument for option '-m'
icpc: command line warning #10121: overriding '-marchpentium4' with '-marchcore2'
icpc: command line warning #10120: overriding '-marchcore2' with '-msse'
icpc: command line warning #10120: overriding '-msse' with '-msse2'
icpc: command line warning #10159: invalid argument for option '-m'
icpc: command line warning #10006: ignoring unknown option '-Wextra'
icpc: command line warning #10156: ignoring option '-Wformat'; no argument required
icpc: command line warning #10006: ignoring unknown option '-Wcast-align'
icpc: command line warning #10156: ignoring option '-Wunused'; no argument required
icpc: command line warning #10006: ignoring unknown option '-Wmissing-braces'
icpc: command line warning #10006: ignoring unknown option '-Wmissing-field-initializers'
icpc: command line warning #10006: ignoring unknown option '-Wmissing-format-attribute'
icpc: command line warning #10006: ignoring unknown option '-Wmissing-include-dirs'
icpc: command line remark #10148: option '-Wparentheses' not supported
icpc: command line warning #10006: ignoring unknown option '-Wredundant-decls'
icpc: command line warning #10006: ignoring unknown option '-Wsign-compare'
icpc: command line warning #10006: ignoring unknown option '-Wstack-protector'
icpc: command line warning #10156: ignoring option '-Wunused'; no argument required
icpc: command line warning #10156: ignoring option '-Wunused'; no argument required
icpc: command line warning #10006: ignoring unknown option '-Wvolatile-register-var'
icpc: command line warning #10120: overriding '-O3' with '-O2'
src/videostreamer.cpp(156): warning #2259: non-pointer conversion from "int" to "unsigned short" may lose significant bits
m_socketAddressMulticast.sin_port = htons((uint16_t)atoi(uniformResourceIdentifier.port().c_str()));
^

src/videostreamer.cpp(156): error: destructible entities are not allowed inside of a statement expression
m_socketAddressMulticast.sin_port = htons((uint16_t)atoi(uniformResourceIdentifier.port().c_str()));
^

src/videostreamer.cpp(164): warning #2259: non-pointer conversion from "int" to "unsigned short" may lose significant bits
m_socketAddressLocal.sin_port = htons((uint16_t)atoi(uniformResourceIdentifier.port().c_str()));
^

src/videostreamer.cpp(164): error: destructible entities are not allowed inside of a statement expression
m_socketAddressLocal.sin_port = htons((uint16_t)atoi(uniformResourceIdentifier.port().c_str()));
^

src/videostreamer.cpp(246): remark #1418: external function definition with no prior declaration
void msleep(uint32_t milliseconds)
^

src/videostreamer.cpp(443): warning #2259: non-pointer conversion from "int" to "uint8_t={unsigned char}" may lose significant bits
uint8_t multicastTtl = m_multicastTtl;
^

src/videostreamer.cpp(508): remark #383: value copied to temporary, reference to temporary used
CHECK_RESULTS("VideoStreamer::connect pthread_create",returnValue);
^

compilation aborted for src/videostreamer.cpp (code 2)

Is this what you meant by output log?

Thans,

-Ed

0 Kudos
TimP
Honored Contributor III
2,252 Views
Yes, that shows much more serious problems than the one you quoted at first.
This article gives advice on conversion of that particular g++ specific idiom.
0 Kudos
Reply