Opened 14 years ago

Closed 12 years ago

#29107 closed defect (fixed)

qore: universal variant fails to build

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: pvanek@…
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: universal Cc: davidnich (David Nichols)
Port: qore

Description

On Mac OS X 10.6.7 with MacPorts 1.9.2 and Xcode 3.2.6 I cannot build qore with the universal variant. I'm uncertain what the relevant portion of the log is, so I'm attaching the whole thing. It builds fine without the universal variant.

Attachments (1)

main.log.bz2 (152.6 KB) - added by ryandesign (Ryan Carsten Schmidt) 14 years ago.

Download all attachments as: .zip

Change History (7)

Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log.bz2 added

comment:1 Changed 13 years ago by davidnich (David Nichols)

Owner: changed from davidnichols@… to pvanek@…

sorry it took so long to process this bug - I hope I have fixed my mail rules so I will see the messages now :(

I was not able to reproduce, but I have MacPorts 2.0.3, Lion, and XCode 4.2 on all my macs now.

From the log file, it looks like there is something very strange going on - basically the build failed due to some kind of duplicate definition in /usr/include/string.h on line 64 - I can't tell what that could have been - my string.h is most likely different

info:build In file included from ../include/qore/common.h:32,
:info:build                  from ../include/qore/Qore.h:37,
:info:build                  from parser.ypp:24,
:info:build                  from single-compilation-unit.cpp:1:
:info:build /usr/include/string.h:64: error: multiple types in one declaration
:info:build /usr/include/string.h:64: error: declaration does not declare anything

I'll assign this bug to Petr Vanek, who still has a machine with Snow Leopard....

thanks
David

comment:2 Changed 13 years ago by davidnich (David Nichols)

Cc: davidnichols@… added

Cc Me!

comment:3 Changed 13 years ago by pvanek@…

Status: newassigned

I can reproduce it. At least.

David, can you test qore build withe these variables, please?

export CPATH='/opt/local/include' 
export CFLAGS='-pipe -O2 -arch x86_64 -arch i386' 
export CPPFLAGS='-I/opt/local/include' 
export CXXFLAGS='-pipe -O2 -arch x86_64 -arch i386' 
export LIBRARY_PATH='/opt/local/lib' 
export F90FLAGS='-pipe -O2' 
export LDFLAGS='-liconv -arch x86_64 -arch i386' 
export OBJC='ccache /usr/bin/gcc-4.2' 
export FCFLAGS='-pipe -O2' 
export INSTALL='/usr/bin/install -c' 
export OBJCFLAGS='-pipe -O2 -arch x86_64 -arch i386' FFLAGS='-pipe -O2' 

export MACOSX_DEPLOYMENT_TARGET='10.6'

also I had to change configure.ac to build qpp (trunk)

Index: configure.ac
===================================================================
--- configure.ac	(revision 4613)
+++ configure.ac	(working copy)
@@ -312,7 +312,7 @@
 		fi
 		;;
      *darwin*)	if test "$GXX" = "yes"; then
-		   CXXFLAGS="$CXXFLAGS -m64"
+		   xCXXFLAGS="$CXXFLAGS -m64"
 		fi
 		# set ARCH to x86_64 to be consistent with other intel 64-bit builds
 		if test "$host_cpu" = "i386"; then

I'll continue with this detective work tonight. It looks like autotools/config script behaves differently in universal build. There are many outputs like this one:

checking execinfo.h usability... no
checking execinfo.h presence... yes
configure: WARNING: execinfo.h: present but cannot be compiled
configure: WARNING: execinfo.h:     check for missing prerequisite headers?
configure: WARNING: execinfo.h: see the Autoconf documentation
configure: WARNING: execinfo.h:     section "Present But Cannot Be Compiled"
configure: WARNING: execinfo.h: proceeding with the compiler's result
configure: WARNING:     ## --------------------------------------------- ##
configure: WARNING:     ## Report this to David Nichols <david@qore.org> ##
configure: WARNING:     ## --------------------------------------------- ##
checking for execinfo.h... no

comment:4 Changed 13 years ago by pvanek@…

ah, I give up for today. I fixed some preprocessor errors in current Portfile (Committed revision 90140). It's *very* strange. 0.8.3 tarball is not compilable still but the current trunk works (simulated in macports). Dunno why.

comment:5 Changed 13 years ago by pvanek@…

as I cannot get the 0.8.3 working as universal. I created new port qore-devel (svn based). It contains all-time-fresh version from SVN trunk. It compiles fine as +universal on my machine. Please try this one for now.

comment:6 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

I think this has gotten fixed somewhere along the way. I was able to install qore @0.8.5.1_1+universal on Snow Leopard.

Note: See TracTickets for help on using tickets.