Support #1209

Build instructions in README

Added by Thomas Beutlich over 1 year ago. Updated over 1 year ago.

Status:ClosedStart date:18 Aug 2016
Priority:NormalDue date:
Assignee:Thomas Beutlich% Done:

100%

Category:documentationEstimated time:2.00 hours
Target version:0.26

Description

source:trunk/README#L36 tells about ./configure for UNIX-like systems, but there is no such file.


Related issues

Related to Exiv2 - Support #1235: ./configure doesn't exists.. in last version of Exiv2. Closed 28 Sep 2016

History

#1 Updated by Thomas Beutlich over 1 year ago

  • Tracker changed from Bug to Support
  • Status changed from New to Closed
  • Private changed from No to Yes

Arg, read further.

#2 Updated by Robin Mills over 1 year ago

  • Assignee set to Thomas Beutlich
  • % Done changed from 0 to 100
  • Estimated time set to 1.00

I'm not happy with that part of the documentation. And for that matter, I'm not happy with the ./configure script. I would prefer ./configure to be something like this warning totally untested script:

#!/bin/bash

if [ ! -e config/configure ]; then
   make config
fi
if [ -e config/configure ]; then
  config/configure $@
fi

# That's all Folks!
##
And Makefile should be modified to generate the "real" configure script in the config directory.

The reasons for preferring this arrangement are:
1 ./configure would always be present.
2 Many open source projects have a ./configure script in their top-most directory.
3 The absence of the ./configure script is puzzling to new users.
4 The <exiv2dir>/configure script is checked in, always present and we don't have a different build procedures depending on how you acquired an exiv2 directory.

The reasons that I have not submitted this change are:
1 It has been this way forever and changing it may have unexpected and painful consequences.
2 Requiring the user to run $ make config makes it very obvious to the user how ./configure is generated.
3 I believe it is good practice to generate the "real" configure script using the AutoTools installed on the platform.

#3 Updated by Andreas Huggel over 1 year ago

  • Assignee deleted (Thomas Beutlich)
  • % Done changed from 100 to 0

Just note that the distribution tarball has a ./configure file and follows the very standard UNIX build process.
But since ./configure is a generated file, it's not in the repository.
So users who downloaded the code from SVN have to read two more sentences in the README. The README is written with users of the tarball in mind first, developers second.

On UNIX-like systems, use the GNU configure script. Run the following
commands from the top directory (containing this file) to configure,
build and install the library and utility:

    $ ./configure
    $ make
    $ sudo make install

If you downloaded the source code from the subversion repository, you
won't have a configure script. Run 'make config' to generate it and see
the section "Hacking" below.

#4 Updated by Andreas Huggel over 1 year ago

  • Assignee set to Thomas Beutlich
  • % Done changed from 0 to 100

Looks like I somehow removed the assignee and set the % done to 0 with the previous comment. That wasn't intended at all.

#5 Updated by Robin Mills over 1 year ago

  • Target version set to 0.26
  • Estimated time changed from 1.00 to 2.00
  • Private changed from Yes to No

Thanks for the clarification, Andreas. I think we're all in agreement that nothing is to be changed here. Thomas closed this issue within a moment of opening it. I've stated my reasons to leave things alone. And you've defended/justified the status quo. So, we're all saying "do nothing".

I'm going to unset "Private". Let's publish this conversation and it can be referenced if a user raises this subject in future.

Also available in: Atom PDF

Redmine Appliance - Powered by TurnKey Linux