Opened 15 years ago

Closed 13 years ago

Last modified 11 years ago

#7980 closed defect (fixed)

gmp-cxx-wrappers does not compile out of the box o Mac Intel

Reported by: enrico.franchi@… Owned by: gwright@…
Priority: Normal Milestone:
Component: ports Version: 1.2
Keywords: Cc: gwright@…,markd@…
Port:

Description

Right at the moment it seems that if you build gmp on darwin and forget to specify --host=none-apple-darwin as a configure option, the compilation fails ("tmp-dive_1.s:98:invalid character '@' in first operand").

The gmp plain portfile has two platform options, one for darwin x86 and one for darwin i386 and both specify --host=none-apple-darwin. gmp works.

However gmp-cxx-wrappers has only variant darwin x86 and it fails when compiling. If I add --host=none-apple-darwin to the configure args everything works as expected, but I suppose the correct way to do it is to make something like the plain gmp.

I don't know if the problem is that gmp-cxx-wrappers specifies a variant instead of a platform block or that it hasn't a block for i386.

My OS was MacOSX 10.4.5 on a MacIntel.

Change History (15)

comment:1 Changed 15 years ago by gwright@…

Owner: changed from darwinports-bugs@… to gwright@…

I'll make the changes so that gmp-cxx-wrappers parallels the method used in the gmp portfile. I don't have a macintel, so I'd appreciate it if you coould check the port.

MIght take a day or two; I've a bug backlog right now!

Best Wishes, Greg

comment:2 Changed 15 years ago by enrico.franchi@…

Ok. If you let me know when the Portfile is updated, I'll sync and then rebuild. However I expect it to work with no hassle.

comment:3 Changed 14 years ago by gwright@…

Status: newassigned

comment:4 Changed 14 years ago by gwright@…

Enrico,

I have added the --host=non-apple-darwin configure option for the Intel/Mac platform (darwin i386).

Let me know if gmp-cxx-wrappers works for you now.

Best Wishes, Greg

comment:5 Changed 14 years ago by enrico.franchi@…

(In reply to comment #3)

Let me know if gmp-cxx-wrappers works for you now.

Yes. It works. However there is a minor problem with gmp 4.2 (when it will be updated). In fact it's a macos x ld bug that appears in make check.

Alex Martelli wrote the patch for the asm version, however it has not been accepted in the main tree. Right now it's a "dirty hack" (but it works well). It could work with 4.1.4 too. However, if someone has time, it can be implemented in the correct way (right now it acts directly on the tree, the gmp manteiners would like something that is activated only when it's built for MacOS X).

The cxx version however does not work for other reasons. I suppose it has something to do with PIC. However right now I'm not skilled enought to find out the solution.

comment:6 Changed 14 years ago by gwright@…

Hi Enrico,

If 4.1.4 is working for you I will close this bug.

gmp-4.2 builds and tests OK on powerpc. Do the problems you referred to in your last note occur on intel? I won't do the upgrade until there is a solution for both platforms.

Best Wishes, Greg

comment:7 Changed 14 years ago by gwright@…

I've checked in the update to 4.2.1. If there is a problem with it, please let me know.

-Greg

comment:8 Changed 14 years ago by enrico.franchi@…

I get this error: sudo port upgrade gmp ---> Fetching gmp ---> Attempting to fetch gmp-4.2.1.tar.bz2 from ftp://ftp.gnu.org/gnu/gmp ---> Verifying checksum(s) for gmp ---> Extracting gmp ---> Configuring gmp Error: Target com.apple.configure returned: configure failure: shell command "cd "/opt/local/var/db/dports/build/_opt_local_var_db_dports_sources_rsync.rsync.darwinports.org_dpupdate_dports_devel_gmp/work/gmp-4.2.1" && ABI=32 ./configure --prefix=/opt/local --infodir=\${prefix}/share/info --enable-shared --enable-cxx --host=none-apple-darwin" returned error 1 Command output: configure: WARNING: If you wanted to set the --build type, don't use --host.

If a cross compiler is detected then cross compile mode will be used.

checking build system type... pentium3-apple-darwin8.6.1 checking host system type... none-apple-darwin checking for a BSD-compatible install... /opt/local/bin/ginstall -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for none-apple-darwin-strip... no checking for strip... strip checking whether to enable maintainer-specific portions of Makefiles... no configure: error: ABI=32 is not among the following valid choices: long longlong

Error: Unable to upgrade port: 1

comment:9 Changed 14 years ago by enrico.franchi@…

(In reply to comment #7)

I get this error: sudo port upgrade gmp [ SNIP ] Error: Unable to upgrade port: 1

I get this very same error if I port upgrade gmp-cxx-wrappers

comment:10 Changed 14 years ago by gwright@…

Hi Enrico,

Many thanks for the information. It seems as if the latest reconfiguration of the autoconf system for gmp has introduced a lot of breakage.

It seems as if the ABI= environment variable works differently for ppc and intel. I'll go through the configure scripts and find out why.

Maybe I can get a fix by later today.

Best WIshes, Greg

comment:11 Changed 14 years ago by enrico.franchi@…

(In reply to comment #9)

Maybe I can get a fix by later today.

Thank you very much.

comment:12 Changed 14 years ago by pipping@…

Milestone: Port Bugs

comment:13 Changed 13 years ago by markd@…

Cc: markd@… added

A fix has been committed for this. Closing.

comment:14 Changed 13 years ago by markd@…

Resolution: fixed
Status: assignedclosed

Really closing this time.

comment:15 Changed 11 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.