Opened 15 years ago

Closed 15 years ago

#17763 closed defect (fixed)

boost-1.37.0 Configure error: fails to build 64-bit

Reported by: eborisch@… Owned by: nox@…
Priority: Normal Milestone:
Component: ports Version: 1.7.0
Keywords: x86_64 Cc:
Port: boost

Description

Building boost for x86_64 fails with :

Command output: error: unrecognized option: --disable-dependency-tracking

Possible fix: (any other impacts?)

variant universal {
	configure.args-delete --disable-dependency-tracking
}

Change History (8)

comment:1 Changed 15 years ago by mf2k (Frank Schima)

Keywords: boost removed
Owner: changed from macports-tickets@… to sanchom@…

Assigning to maintainer.

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

That won't work as you're replacing the default universal variant. This would do what you want:

configure.universal_args-delete --disable-dependency-tracking

comment:3 Changed 15 years ago by eborisch@…

Turns out this successfully builds, but it's not creating 64-bit versions:

MacPro: port echo installed and boost
boost                          @1.37.0_0+darwin_9+universal 
MacPro: file /opt/local/lib/libboost_*.dylib 
/opt/local/lib/libboost_date_time-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_filesystem-mt.dylib:          Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_graph-mt.dylib:               Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_iostreams-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_c99-mt.dylib:            Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_c99f-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_c99l-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_tr1-mt.dylib:            Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_tr1f-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_math_tr1l-mt.dylib:           Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_prg_exec_monitor-mt.dylib:    Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_program_options-mt.dylib:     Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_regex-mt.dylib:               Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_serialization-mt.dylib:       Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_signals-mt.dylib:             Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_system-mt.dylib:              Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_thread-mt.dylib:              Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_unit_test_framework-mt.dylib: Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_wave-mt.dylib:                Mach-O dynamically linked shared library i386
/opt/local/lib/libboost_wserialization-mt.dylib:      Mach-O dynamically linked shared library i386

(My universal_archs is set to i386 x86_64)

See here for possible resolution: http://www.luxrender.net/forum/viewtopic.php?f=22&t=472#p8274

... It looks like multiple build passes followed up with lipo may be required. (Ideally only building the subset of architectures requested in universal_archs) Any Portfile wizards out there up to the task?

comment:4 in reply to:  2 Changed 15 years ago by dominik@…

Replying to jmr@…:

That won't work as you're replacing the default universal variant.

I got the same problem, although I just want to build ppc and i386 versions. When I use that statement from above ("configure.universal_args-delete --disable-dependency-tracking"), the error message is:

Error: Error executing universal: can't read "configure.universal_args": no such variable
Error: Unable to open port: Error evaluating variants

There might be a problem with the "universal_args" and the port version 1.7, for now I just modified the portfile with a pre-configure step:

pre-configure {
	if {[variant_isset universal]} {
		configure.args-delete --disable-dependency-tracking
	}
}

This compiles without errors, but the result is not universal. For example:

$ file /opt/local/lib/libboost_system-mt.dylib 
/opt/local/lib/libboost_system-mt.dylib: Mach-O dynamically linked shared library ppc

comment:5 Changed 15 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

comment:6 Changed 15 years ago by blb@…

Owner: changed from sanchom@… to macports-tickets@…

(sanchom@ is no longer maintainer)

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

Owner: changed from macports-tickets@… to nox@…

comment:8 Changed 15 years ago by nox@…

Resolution: fixed
Status: newclosed

Update to 1.39.0_2.

Note: See TracTickets for help on using tickets.