[MacPorts] #28270: ipe doesn't ensure it's UsingTheRightCompiler

MacPorts noreply at macports.org
Wed Feb 16 00:26:52 PST 2011


#28270: ipe doesn't ensure it's UsingTheRightCompiler
--------------------------------------+-------------------------------------
  Reporter:  ryandesign@…             |       Owner:  m.thon@…                   
      Type:  defect                   |      Status:  closed                     
  Priority:  Normal                   |   Milestone:                             
 Component:  ports                    |     Version:  1.9.2                      
Resolution:  fixed                    |    Keywords:                             
      Port:  ipe                      |  
--------------------------------------+-------------------------------------

Comment(by ryandesign@…):

 Actually, adding those default CXXFLAGS and LDFLAGS has caused problems
 when upgrading; for example, trying to upgrade the port from 7.0.13 to
 7.0.14 I now get...

 {{{
 DEBUG: Environment: CPATH='/opt/local/include'
 CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_Users_rschmidt_macports_dports_graphics_ipe/work/.CC_PRINT_OPTIONS'
 CXXFLAGS='-O2 -arch x86_64' CPPFLAGS='-I/opt/local/include'
 LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES'
 MACOSX_DEPLOYMENT_TARGET='10.6' LDFLAGS='-L/opt/local/lib -arch x86_64'
 DEBUG: Assembled command: 'cd
 "/opt/local/var/macports/build/_Users_rschmidt_macports_dports_graphics_ipe/work/ipe-7.0.14/src"
 && /usr/bin/make all IPEPREFIX=/opt/local MOC=/opt/local/bin/moc
 CXX=/usr/bin/g++-4.2'
 /usr/bin/make --directory=ipelib all
 mkdir -p ../../build/obj/ipelib; echo "" >
 ../../build/obj/ipelib/depend.mak; for f in ipebase.cpp ipeplatform.cpp
 ipegeo.cpp ipexml.cpp ipeattributes.cpp ipebitmap.cpp ipedct.cpp
 ipeshape.cpp ipegroup.cpp ipeimage.cpp ipetext.cpp ipepath.cpp
 ipereference.cpp ipeobject.cpp ipefactory.cpp ipestdstyles.cpp ipeiml.cpp
 ipepage.cpp ipepainter.cpp ipepdfparser.cpp ipepdfwriter.cpp
 ipepswriter.cpp ipestyle.cpp ipesnap.cpp ipeutils.cpp ipelatex.cpp
 ipedoc.cpp; do /usr/bin/g++-4.2 -MM -MT
 ../../build/obj/ipelib/${f%%.cpp}.o -I/opt/local/include -I../include
 -DIPEFONTMAP=\"/opt/local/share/ipe/7.0.14/fontmap.xml\"    $f >>
 ../../build/obj/ipelib/depend.mak; done
 Compiling ipebase.cpp...
 /usr/bin/g++-4.2 -O2 -arch x86_64 -Wall -g -O2 -fPIC -I/opt/local/include
 -I../include   -DIPEFONTMAP=\"/opt/local/share/ipe/7.0.14/fontmap.xml\"
 -c -o ../../build/obj/ipelib/ipebase.o ipebase.cpp
 ipebase.cpp:674: error: prototype for 'long int ipe::StringStream::tell()
 const' does not match any in class 'ipe::StringStream'
 /opt/local/include/ipebase.h:291: error: candidate is: virtual int
 ipe::StringStream::tell() const
 ipebase.cpp:674: error: 'long int ipe::StringStream::tell() const' cannot
 be overloaded
 /opt/local/include/ipebase.h:291: error: with 'virtual int
 ipe::StringStream::tell() const'
 ipebase.cpp:715: error: prototype for 'long int ipe::FileStream::tell()
 const' does not match any in class 'ipe::FileStream'
 /opt/local/include/ipebase.h:303: error: candidate is: virtual int
 ipe::FileStream::tell() const
 ipebase.cpp:715: error: 'long int ipe::FileStream::tell() const' cannot be
 overloaded
 /opt/local/include/ipebase.h:303: error: with 'virtual int
 ipe::FileStream::tell() const'
 make[1]: *** [../../build/obj/ipelib/ipebase.o] Error 1
 }}}

 ...because some include file has changed in the new version, but
 -I/opt/local/include is telling it to look at the old version's headers
 first; if I fix the CXXFLAGS, a similar error occurs later because of the
 LDFLAGS. So I removed those again with the 7.0.14 update in r76017, and
 left just the archflags in CXXFLAGS and LDFLAGS. The port already seemed
 to know where to find the libraries and headers it needs, so there's no
 need to add that information to CXXFLAGS and LDFLAGS.

-- 
Ticket URL: <https://trac.macports.org/ticket/28270#comment:4>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list