Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#39064 closed defect (fixed)

vile: error: conflicting types for 'yyget_leng'

Reported by: veedeehjay@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.1.3
Keywords: Cc: ryandesign (Ryan Schmidt), dickey@…
Port: vile

Description

`sudo port install vile' fails. the probably relevant (trailing) part of the generated logfile reads:

8<-----------------------------------------------
...
 :info:build <stdout>:527:11: error: conflicting types for 'yyget_leng'
:info:build yy_size_t yyget_leng (void );
:info:build           ^
:info:build ./filters.h:213:12: note: previous declaration is here
:info:build extern int yyget_leng (void);
:info:build            ^
:info:build <stdout>:1636:11: error: conflicting types for 'yyget_leng'
:info:build yy_size_t yyget_leng  (void)
:info:build           ^
:info:build ./filters.h:213:12: note: previous declaration is here
:info:build extern int yyget_leng (void);
:info:build            ^
:info:build 2 errors generated.
:info:build make[1]: *** [ada-filt.o] Error 1
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_editors_vile/vile/work/vile-9.8/filters'
:info:build make: *** [all] Error 2
:info:build make: *** Waiting for unfinished jobs....
:info:build make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_editors_vile/vile/work/vile-9.8'
:info:build Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_editors_vile/vile/work/vile-9.8" && /usr/bin/make -j4 -w all 
:info:build Exit code: 2
:error:build org.macports.build for port vile returned: command execution failed
:debug:build Error code: CHILDSTATUS 40060 2
:debug:build Backtrace: command execution failed
    while executing
"system -nice 0 $fullcmdstring"
    ("eval" body line 1)
    invoked from within
"eval system $notty $nice \$fullcmdstring"
    invoked from within
"command_exec build"
    (procedure "portbuild::build_main" line 8)
    invoked from within
"$procedure $targetname"
...
8<-----------------------------------------------

Attachments (1)

main.log (47.1 KB) - added by veedeehjay@… 7 years ago.
main.log' resulting from sudo port clean vile; sudo port install vile'

Download all attachments as: .zip

Change History (15)

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

Please attach the complete main.log after cleaning and trying again.

Changed 7 years ago by veedeehjay@…

Attachment: main.log added

main.log' resulting from sudo port clean vile; sudo port install vile'

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

Cc: ryandesign@… added

I tried updating the port to the latest development (?) version 9.8j and it has the same problem. You should report it to the developers of vile.

We had this problem once before in #27422 but there the reason was a too-old version of flex provided by OS X, and the solution was to use MacPorts flex instead. So the reason this time must be different. (It could be that MacPorts flex is now too new!)

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

Summary: `vile' editor does not compile/install under 10.8.3.vile: error: conflicting types for 'yyget_leng'

comment:4 in reply to:  2 ; Changed 7 years ago by veedeehjay@…

Replying to ryandesign@…:

I tried updating the port to the latest development (?) version 9.8j and it has the same problem. You should report it to the developers of vile.

I issued a bug report to be found here; https://savannah.nongnu.org/bugs/index.php?38964

We had this problem once before in #27422 but there the reason was a too-old version of flex provided by OS X, and the solution was to use MacPorts flex instead. So the reason this time must be different. (It could be that MacPorts flex is now too new!)

no idea. but I've checked that the flex version is the same as under 10.7.5 where vile still compiled without problem. so I'm not sure whether it's directly related t flex.

another thought; the vile binary from 10.7.5 runs just fine under 10.8.3 but chokes since it does not find certain (ASCII) resource files in the canonical places. woud it be stupid/out of the question to provide a binary package of vile for 10.8.3 that was generated under 10.7.5 (or similar)?? this could be a short-term work around until (hopefully) the vile maintainer can look into this.

Last edited 7 years ago by ryandesign (Ryan Schmidt) (previous) (diff)

comment:5 in reply to:  4 Changed 7 years ago by ryandesign (Ryan Schmidt)

Replying to veedeehjay@…:

no idea. but I've checked that the flex version is the same as under 10.7.5 where vile still compiled without problem. so I'm not sure whether it's directly related t flex.

You're talking about the version of flex provided by MacPorts, not the version of flex provided by Apple in OS X (which isn't being used since the MacPorts version is installed).

another thought; the vile binary from 10.7.5 runs just fine under 10.8.3 but chokes since it does not find certain (ASCII) resource files in the canonical places. woud it be stupid/out of the question to provide a binary package of vile for 10.8.3 that was generated under 10.7.5 (or similar)??

We don't have a mechanism to do that in MacPorts. Our automated build system builds each port on each version of OS X, and when MacPorts goes looking for binaries, it will only look for those built on the same version of OS X.

this could be a short-term work around until (hopefully) the vile maintainer can look into this.

The vile port in MacPorts has no maintainer at this time.

comment:6 Changed 7 years ago by dickey@…

something like that. I documented this a few years ago here:

http://invisible-island.net/vile/vile.faq.html#old_flex_bugs

My recommendation is to add a port for a working version of flex, e.g.,

http://invisible-island.net/reflex/reflex.html

which I don't mind doing myself, since I've a couple of Mac's now.

comment:7 Changed 7 years ago by dickey@…

flex's -p option is used when vile is configured with builtin-filters. (I investigated briefly the loadable-filters, but recall some problem with that). "new" flex would "work" for the external-filters case, but that's not a recommended configuration because it is less efficient, e.g., as noted here:

http://invisible-island.net/vile/vile.faq.html#some_color_missing

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

I'm already working on a port for reflex. I filed #39071 for this request.

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

Cc: dickey@… added

comment:10 in reply to:  8 Changed 7 years ago by dickey@…

Replying to ryandesign@…:

I'm already working on a port for reflex. I filed #39071 for this request.

sounds good. I built 9.8j just a few weeks ago on my Macs (Leopard and Mountain Lion).

Last edited 7 years ago by dickey@… (previous) (diff)

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

Resolution: fixed
Status: newclosed

Changed vile to use reflex instead of flex in r105972; now it builds.

Since 9.8 is still the version linked from the vile homepage, I assumed the versions with a letter suffix are development versions, but if 9.8j is considered stable enough that we should update the port to that version, please file a new ticket for that.

comment:12 in reply to:  11 Changed 7 years ago by dickey@…

Replying to ryandesign@…:

Changed vile to use reflex instead of flex in r105972; now it builds.

Since 9.8 is still the version linked from the vile homepage, I assumed the versions with a letter suffix are development versions, but if 9.8j is considered stable enough that we should update the port to that version, please file a new ticket for that.

ok. Lettered ones are pretty stable, actually.

There are two versions of the source linked from the homepage. One is the release (9.8) and one is the current (9.8j):

http://invisible-island.net/datafiles/release/vile.tar.gz

http://invisible-island.net/datafiles/current/vile.tar.gz

Since my pages are static (to keep things simple...), I run a script after uploading which positions the release- and current-files which have changed.

Last edited 7 years ago by dickey@… (previous) (diff)

comment:13 in reply to:  11 ; Changed 7 years ago by veedeehjay@…

Replying to ryandesign@…:

Changed vile to use reflex instead of flex in r105972; now it builds.

just some feedback: thanks a lot to both of you for sorting this out: indeed installation works flawlessly again (just tested).

Since 9.8 is still the version linked from the vile homepage, I assumed the versions with a letter suffix are development versions, but if 9.8j is considered stable enough that we should update the port to that version, please file a new ticket for that.

comment:14 in reply to:  13 Changed 7 years ago by dickey@…

Replying to veedeehjay@…:

Replying to ryandesign@…:

Changed vile to use reflex instead of flex in r105972; now it builds.

just some feedback: thanks a lot to both of you for sorting this out: indeed installation works flawlessly again (just tested).

No problem (report bugs)

Note: See TracTickets for help on using tickets.