Opened 13 years ago

Closed 13 years ago

Last modified 12 years ago

#16027 closed defect (fixed)

mapm3: readline build errors

Reported by: pst@… Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 1.6.0
Keywords: mapm Cc: ryandesign (Ryan Schmidt)
Port:

Description

Installed latest version of macports on an iMac (10.5.4). Got the following:

[pst@USDA-3402-GenoMac, 05:08 PM ~/] sudo port install mapm3 Password: ---> Fetching mapm3 ---> Attempting to fetch mapm3-source.tar.Z from http://www-genome.wi.mit.edu/ftp/distribution/software/mapmaker3/ ---> Verifying checksum(s) for mapm3 ---> Extracting mapm3 ---> Applying patches to mapm3 ---> Configuring mapm3 ---> Building mapm3 with target all Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_science_mapm3/work/mapm3-source" && make all " returned error 2 Command output: readline.c: In function 'rl_generic_bind': readline.c:5203: warning: incompatible implicit declaration of built-in function 'strlen' readline.c: In function 'parser_if': readline.c:5430: warning: incompatible implicit declaration of built-in function 'strcpy' readline.c:5430: warning: incompatible implicit declaration of built-in function 'strlen' readline.c: In function 'rl_parse_and_bind': readline.c:5528: error: invalid storage class for function 'substring_member_of_array' readline.c:5617: warning: incompatible implicit declaration of built-in function 'strlen' readline.c:5665: warning: incompatible implicit declaration of built-in function 'strlen' readline.c: At top level: readline.c:5765: error: static declaration of 'substring_member_of_array' follows non-static declaration readline.c:5655: error: previous implicit declaration of 'substring_member_of_array' was here readline.c: In function 'substring_member_of_array': readline.c:5767: error: invalid storage class for function 'strindex' readline.c: At top level: readline.c:5820: error: conflicting types for 'strindex' readline.c:5771: error: previous implicit declaration of 'strindex' was here readline.c: In function 'strindex': readline.c:5822: warning: incompatible implicit declaration of built-in function 'strlen' readline.c: In function 'xmalloc': readline.c:5873: warning: incompatible implicit declaration of built-in function 'malloc' readline.c: In function 'memory_error_and_abort': readline.c:5896: warning: incompatible implicit declaration of built-in function 'abort' readline.c: In function 'gnu_edit_this': readline.c:5965: error: invalid storage class for function 'rl_prep_terminal' readline.c:5965: error: invalid storage class for function 'rl_deprep_terminal' readline.c:5971: warning: incompatible implicit declaration of built-in function 'strcpy' readline.c:5972: warning: incompatible implicit declaration of built-in function 'strlen' make[1]: * [readline.o] Error 1 make: * [readline/libreadline.a] Error 2

Error: Status 1 encountered during processing. [pst@USDA-3402-GenoMac, 05:08 PM ~/]

Change History (10)

comment:1 Changed 13 years ago by jmroot (Joshua Root)

Milestone: MacPorts 1.6.1Port Bugs

comment:2 Changed 13 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added

mapmaker3 is from February 1993. This software is ancient.

It looks like it's having trouble compiling the readline library included with the mapm3 sources. One could try to modify the mapm3 sources to use the version of readline provided by the existing readline port instead, but I don't know whether the readline interface has changed in the past 15 years. mapm3 may be incompatible with the newest readline. If that's the case, then there are older readline ports (readline-5 and readline-4) which one could try. I can't figure out which version of readline is included with mapm3, though if one were to look at the release history of readline one might be able to figure it out.

comment:3 Changed 13 years ago by pst@…

Can someone at macports simply REMOVE the readline code so that mapm3 will compile? I think it will work fine without readline.

comment:4 Changed 13 years ago by ryandesign (Ryan Schmidt)

If you can figure out how to do so, and attach a patch here, I'll be happy to test it and commit it to the repository.

comment:5 Changed 13 years ago by pst@…

I have no idea how to do so, but I think that is what they did over at Fink. Maybe the build files that they have will be of use to you. I am not a programmer, that is why MacPorts is useful to me!!

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

Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned
Summary: mapm3 build errorsmapm3: readline build errors

comment:7 Changed 13 years ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: assignedclosed

Thanks for your help and for your tip to look at how Fink does it. I disabled readline support in r38628. Please wait 30 minutes, then "sudo port sync" and you should then be able to install mapm3.

comment:8 Changed 13 years ago by pst@…

Thanks Ryan!

I did a "port clean mapm3" then "port sync" and "port install mapm3". It is working!! I have not done extensive testing yet though. Is this the "Large Dataset" port? If not, I could really use that option!!

Paul

comment:9 Changed 13 years ago by ryandesign (Ryan Schmidt)

I only fixed the readline issue. The Fink version does have more patches than the MacPorts version. Not sure if we need to bring any more of them over. But it looks like large dataset support is available in the mapm3 port's "large_datasets" variant. See port variants mapm3. Install it using sudo port install mapm3 +large_datasets. Not sure why this isn't the default. Do you know if there is any detriment to enabling large dataset support always? FreeBSD seems to do so. If there's anything else we need to do for the mapm3 port, please open a new ticket.

comment:10 Changed 12 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

Note: See TracTickets for help on using tickets.