[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Search]

Re: Production Version 42.0 Fails to Build



Thanks for the further explanation. I figured it was something like that. It's understandable to have the clean target removal. ELC files.
I'm sure this was a hard one to figure out. I never would've thought that it was The result of leftover precompiled objects. Anyway thanks again for all the work.
Sent from my iPhone

On May 6, 2015, at 4:33 AM, Tim Cross <theophilusx@xxxxxxxxxxx> wrote:

The elc files being included in the tarball is just a simple error. What I'm guessing has occurred is that the release version has been checked out of the repository, a make config and make emacspeak has been done to make sure it builds, then a make clean to remove the elc files and what is left, tarred up to create the release tarball. As the make clean target has not included the g-client directory, these elc files have not been removed with the make clean and then have been included in the tarball by accident. 

This is an easy error to make and quite hard to catch - especially by the person testing and creating the tarball. If Raman unpacked the tarballl and tried the build, it would almost certainly have worked because the elc files would likely be from the same emacs version as that being used to build emacs from the archive. The error would only show up when someone tried to build emacs with a version diferent from that which was used to create the bundled elc files and it is likely it would have to be a considerably different version. 

My guess will be that Raman will fix the make clean target, check out the 42.0 tag and create a new tarball for the download site. 

On 6 May 2015 at 20:35, Steve Holmes <steve@xxxxxxxxxxx> wrote:
Thanks for digging here and finding this out. This brings up a
fundamental question though; Shouldn't a fresh tar ball not have any
compiled objects in it? I always figured these to be "clean
uncompiled" source and the local build / make process would compile
everything fresh.

Oh and I thought I had read that g-client wasn't active anymore. Am I
missing something here?

I just did a fresh extract of the 42.0 tar ball and did a make
clean. I then captured a list of .elc files. There seems to be quite a
few. I will include the list at bottom of this  message. Yep, I
removed *EVERY* .elc file in the working directory where I did this
test build and now tha make went through to completion.

I have seen several packages over the years have an additional make
target called dist-clean or something similar and That target was
intended to ready a package for source distributions. Personally, I
would have thought the regular clean target should do likewise but I
guess the clean target was intended for re-building in an existing
project. Anyway, enough rambling for now.

On Wed, May 06, 2015 at 07:24:47PM +1000, Tim Cross wrote:
> OK, I think I've found the problem. As is often the case, everyone was a
> little right and everyone was a little wrong.
>
> Raman is quite correct that the type of problem Steve and I saw is usually
> due to stale elc files built with a different version of emacs which are
> incompatible with the version being used for the build. This is often a
> sign of something wrong in the user's environment, but not in this case.
>
> I believe that Steve was also correct in that his environment is setup OK
> and that there is a problem with the tarball.
>
> It looks like make clean is failing to clean out all the *.elc files. In
> particular, it is not cleaning out elc files in the lisp/g-client
> subdirectory. Unfortunately, the tarball includes these elc files, which I
> presume have been built with the version of emacs Raman is running. As a
> result, when you try to build emacspeak from the tarball, it is likely to
> fail if your using a different version of emafcs than the one Raman is
> using. As soon as I remove these elc files and then run make clean, make
> config and make emacspeak, it all works and emacspeak builds. I also found
> that clean is failing to remove the file sounds/default-8k/define-theme.elc
>
> I guess the solution is to modify the clean target in the makefile so that
> it cleans out g-client and I guess create an updated tarball for the
> download site.
>
> regards,
>
> Tim
>
>
>
> On 5 May 2015 at 21:14, Steve Holmes <steve@xxxxxxxxxxx> wrote:
>
> > Thanks for confirming this, Tim. I seriously doubt my emacs environment is
> > as broken as was claimed earlier. Besides, when someone claims something as
> > strongly as that and offers no further details, How the hell would I be
> > able to fix it? I have what I believe to be a fairly simple configuration
> > of emacs for local packages but emacs itself, is strait from a production
> > package with my distro (version 24.4).
> >
> > Further more, when I have a successful build of this package, what I
> > upload to the Arch User repository is just a package containing a build
> > script along with some parameters that set proper paths and such. The user
> > downloads this package, runs it and that will fetch the base tar ball and
> > compile/build it. The AUR doesn’t distribute pre-built binaries.
> >
> > Tim, I will be curious about what you find.
> >
> > > On May 4, 2015, at 4:14 PM, Tim Cross <tcross@xxxxxxxxxxx> wrote:
> > >
> > >
> > > Just FYI - no investigation yet, but I downloaded the tar.bz2 file from
> > sourceforge for version 42, unpacked it in a clean directory, did a make
> > clean, make config and make emacspeak and got the same error Steve has been
> > seeing. This is with emacs 24.5 built from the official release source
> > tarball.
> > >
> > > I didn’t have time to dig any deeper this morning before work, but will
> > attempt to look at it after work today.
> > >
> > > regards,
> > >
> > > Tim
> > >
> > >
> > > <une.png>
> > >
> > >
> > > Tim Cross
> > >
> > > IT Security Manager
> > > Information Technology Directorate
> > >
> > > University of New England
> > > Armidale N.S.W. 2351 Australia
> > >
> > > Email: tcross@xxxxxxxxxxx
> > > Phone: +61 2 6773 3210
> > > Mobile: +61 428 212 217
> > >
> > >> On 5 May 2015, at 12:36 am, T. V. Raman <tv.raman.tv@xxxxxxxxxxx> wrote:
> > >>
> > >>
> > >>>>>>> "Steve" == Steve Holmes <steve@xxxxxxxxxxx> writes:
> > >>    Steve> On Sun, May 03, 2015 at 06:56:12PM -0700, T. V. Raman
> > >>    Steve> wrote:
> > >>>> Suspect you need to do a make clean first followed by a
> > >>>> make config.
> > >>    Steve>
> > >>    Steve> No go. I cleared out previous source and pkg
> > >> "Cleared out pkg directory"
> > >> is not "make clean; make config"
> > >>
> > >>    Steve> directories and I still get the error.
> > >>    Steve>
> > >>    Steve> emacspeak-eww.el:62:1:Error: Symbol's function
> > >>    Steve> definition is void: cl-struct-define
> > >>    Steve>
> > >>    Steve> I also included 'make clean' before my 'make config'
> > >>    Steve> line but still the error above. It's gotta be
> > >> Your emacs world is badly configured
> > >>
> > >> Decide what emacs you're going to use then specify the full path
> > >> during build
> > >> make config EMACS=<emacspath>
> > >> make EMACS=<emacspath>
> > >>
> > >> I would not recommend distributing a package you build in a
> > >> semi-broken environment.
> > >>
> > >>
> > >>    Steve> something else.
> > >>    Steve>
> > >>    Steve> I have a similar build procedure for the git version
> > >>    Steve> and that one compiles fine.
> > >>    Steve>
> > >>    Steve>
> > -----------------------------------------------------------------------------
> > >>    Steve> To unsubscribe from the emacspeak list or change your
> > >>    Steve> address on the emacspeak list send mail to
> > >>    Steve> "emacspeak-request@xxxxxxxxxxx" with a subject of
> > >>    Steve> "unsubscribe" or "help".
> > >>
> > >>
> > -----------------------------------------------------------------------------
> > >> To unsubscribe from the emacspeak list or change your address on the
> > >> emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a
> > >> subject of "unsubscribe" or "help".
> > >>
> > >
> >
> >
> > -----------------------------------------------------------------------------
> > To unsubscribe from the emacspeak list or change your address on the
> > emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a
> > subject of "unsubscribe" or "help".
> >
> >
>
>
> --
> regards,
>
> Tim
>
> --
> Tim Cross

-----------------------------------------------------------------------------
To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a
subject of "unsubscribe" or "help".




--
regards,

Tim

--
Tim Cross



|All Past Years |Current Year|


If you have questions about this archive or had problems using it, please contact us.

Contact Info Page