Opened 15 years ago

Closed 15 years ago

#20726 closed defect (invalid)

ncursesw fails to build universal on 10.6 ppc

Reported by: asimmons@… Owned by: macports-tickets@…
Priority: Low Milestone:
Component: ports Version: 1.8.0
Keywords: Cc: imajes@…, nerdling (Jeremy Lavergne), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: ncursesw

Description

With universal options set to this:

# Options for Universal Binaries (+universal variant)

# MACOSX_DEPLOYMENT_TARGET
universal_target	10.4

# the SDK "sysroot" to use 
universal_sysroot	/Developer/SDKs/MacOSX10.4u.sdk

# machine architectures
universal_archs		i386 ppc

configuring ncursesw for ppc will fail:

$ sudo port install ncursesw +universal
--->  Fetching ncursesw
--->  Attempting to fetch ncurses-5.7.tar.gz from http://mirrors.kernel.org/gnu/ncurses
--->  Verifying checksum(s) for ncursesw
--->  Extracting ncursesw
--->  Applying patches to ncursesw
--->  Configuring ncursesw
--->  Configuring ncursesw for architecture i386
--->  Configuring ncursesw for architecture ppc
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_ncursesw/work/ncurses-5.7-ppc" && ./configure --prefix=/opt/local --enable-widec --disable-rpath --with-shared --without-debug --without-ada --enable-sigwinch --mandir=/opt/local/share/man --with-manpage-format=normal --disable-dependency-tracking --host=powerpc-apple-darwin10.0.0 --with-build-cc='/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2' --with-build-cpp='/Developer/usr/llvm-gcc-4.2/bin/llvm-cpp-4.2' --with-build-cppflags=-D_XOPEN_SOURCE_EXTENDED --enable-big-core --with-chtype=long  --with-bool='unsigned int' " returned error 1
Command output: checking for nawk... no
checking for awk... awk
checking for egrep... (cached) grep -E
checking for a BSD compatible install... /usr/bin/install -c
checking for tdlint... no
checking for lint... no
checking for alint... no
checking whether ln -s works... yes
checking for long file names... yes
checking if we should assume mixed-case filenames... auto
checking if filesystem supports mixed-case filenames... no
checking whether make sets ${MAKE}... yes
checking for ctags... yes
checking for makeflags variable... 
checking for powerpc-apple-darwin10.0.0-ranlib... no
checking for ranlib... ranlib
checking for powerpc-apple-darwin10.0.0-ld... no
checking for ld... ld
checking for powerpc-apple-darwin10.0.0-ar... no
checking for ar... ar
checking for archiver options (symbol AR_OPTS)... rv
checking if you have specified an install-prefix... 
checking for native build C compiler... /Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2
checking for native build C preprocessor... /Developer/usr/llvm-gcc-4.2/bin/llvm-cpp-4.2
checking for native build C flags... 
checking for native build C preprocessor-flags... -D_XOPEN_SOURCE_EXTENDED
checking for native build linker-flags... 
checking for native build linker-libraries... 
configure: error: Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler.

Error: Status 1 encountered during processing.

Change History (10)

comment:1 Changed 15 years ago by nerdling (Jeremy Lavergne)

Cc: imajes@… snc@… added
Port: ncursesw added
Priority: NormalLow
Version: 1.7.11.8.0

comment:2 Changed 15 years ago by jmroot (Joshua Root)

Cc: mcalhoun@… added

Muniversal issue. FYI, universal_target and universal_sysroot do nothing in 1.8.

comment:3 Changed 15 years ago by asimmons@…

fyi, I originally got this with v1.7.1, but it also happens with 1.8.

comment:4 Changed 15 years ago by tenomoto (Takeshi Enomoto)

I encountered the same problem on MacBook Pro (Intel) running Mac OS X 10.4 (Tiger). There does not seem be a problem with Leopard.

comment:5 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)

If the issue only occurs when you set universal_target and universal_sysroot to values which are not native to your version of Mac OS X, then this will not be fixed because this capability has already been removed from MacPorts trunk.

Also, you appear to be trying to build universal for i386 ppc but your OS is Snow Leopard (darwin 10.0.0). You're not going to be able to build ppc binaries on Snow Leopard, because Snow Leopard does not run on PowerPC.

comment:6 Changed 15 years ago by asimmons@…

Are you saying that cross-compiling has been disabled in MacPorts? E.g., if I use MacPorts 1.8 I won't be able to build universal binaries (even on OS 10.5)?

comment:7 Changed 15 years ago by blb@…

It depends on how you define cross-compiling; MacPorts 1.8 will still support it to the extent that is needed for universal support (i386 on PowerPC and vice versa), but the ability to select an SDK (for supporting a different OS version) is removed since it was not working right anyway.

The only universal variable available in 1.8, via macports.conf, will be universal_archs.

comment:8 Changed 15 years ago by asimmons@…

So using v1.8, if we build a ppc universal binary on 10.5 it won't run on 10.4 (because it'll be linked to the wrong system dylibs). So while technically supporting cross-compilation, it won't work in practice.

comment:9 Changed 15 years ago by blb@…

Compiling on 10.5 for 10.4 never really worked properly due to ports with platform variants (like 'darwin 9') since those always apply, but if you are trying to target 10.4, that would cause issues. Hence the other bits which were trying to allow you to target an earlier version of the OS were removed since they didn't work as they should.

Building on 10.4 for 10.4+ should usually work; until MacPorts has some method for specifying things to be done when targeting a specific OS version (instead of how it works now, where it only targets the platform on which it is currently building), setting the SDK in MacPorts doesn't make sense.

comment:10 Changed 15 years ago by tobypeterson

Resolution: invalid
Status: newclosed

not a bug

Note: See TracTickets for help on using tickets.