You are not logged in.

#1 2009-05-27 11:16:23

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

[SOLVED] How to find out which settings were used to compile the app?

Daenyth wrote:

Just as a note for future reference, you can read /proc/config.gz for the kernel config, and that will tell you the compilation settings.

Is there a *unified* way to check ./configure settings in compiled apps when you don't have the PKGBUILD that was used to create them? I know 'vim --version' but that doesn't work for some other apps. Increasing verbosity doesn't help much.

I don't know if it's the best forum for such thread, so feel free to move it.

Last edited by karol (2009-05-29 15:11:36)

Offline

#2 2009-05-27 11:29:33

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,365
Website

Re: [SOLVED] How to find out which settings were used to compile the app?

In general no...  Only if the software has that function built in.

Offline

#3 2009-05-27 12:19:21

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [SOLVED] How to find out which settings were used to compile the app?

Thanks, Allan.
Let's say I like app XYZ, but I'd like to disable in ./configure one thing (in case of mplayer it was smbclient), than there's no easy way tell which options should I use in my PKGBUILD to make it look just like the stock one w/ the exception of that one option. When I pick that app from ABS will the PKGBUILD be different than the one used to build the app for the repos? Will 'pacman -S XYZ-1.2.3' and building XYZ-1.2.3 from ABS (w/o modifying the supplied PGKBUILD) result in differently configured apps? I know you don't have to specify app version for pacman, I just wanted to make clear I'm talking about the same version for pacman and ABS.
Than there's the toolchain issue, where '--enable-blah' may not work w/ the newest gcc, but I have no way of finding out which toolchain was used to build the app in the repos.

Offline

#4 2009-05-27 13:48:48

Mr.Elendig
#archlinux@freenode channel op
From: The intertubes
Registered: 2004-11-07
Posts: 4,092

Re: [SOLVED] How to find out which settings were used to compile the app?

abs will (as a general rule) contain the exact PKGBUILD that the package in the official repos was created with.

Edit: The package you build might or might not differ, depending on the version of the deps that you have installed, the paths, and your makepkg.conf

Last edited by Mr.Elendig (2009-05-27 13:50:29)


Evil #archlinux@libera.chat channel op and general support dude.
. files on github, Screenshots, Random pics and the rest

Offline

#5 2009-05-27 15:46:28

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [SOLVED] How to find out which settings were used to compile the app?

I was hoping that the repos hold compiled ABS pkgs, but wasn't sure. Aren't they build w/ vanilla makepkg.conf? Mplayer PKGBUILD unsets CFLAGS, but I would call that vanilla too.

Mr.Elendig wrote:

The package you build might or might not differ, depending on the version of the deps that you have installed, the paths, and your makepkg.conf

And that is the problem, PKGBUILDs don't contain a full description of the environment: 'this_app' was build on $date with foo-1.2, bar-2.3, baz-3.4 etc.

Offline

#6 2009-05-27 16:15:59

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: [SOLVED] How to find out which settings were used to compile the app?

karol wrote:

there's no easy way tell which options should I use in my PKGBUILD to make it look just like the stock one w/ the exception of that one option.

Of course there is - you grab the current PKGBUILD and add/remove/edit as required.

karol wrote:

Than there's the toolchain issue, where '--enable-blah' may not work w/ the newest gcc, but I have no way of finding out which toolchain was used to build the app in the repos.

Yes you have - simply find the svn revisions of the toochain apps that were current at the time the app's PKGBUILD was committed.

To elaborate a little: the repos provide packages that are built in a clean chroot with default settings in makepkg.conf from the PKGBUILDs that ABS (or the SVN repo) provides. Any version-sensitive deps are specified as such in the depends/makedepends arrays. If you decide to rebuild a package that has not been officially rebuilt in the reasonably recent past, you may run into compatibility issues e.g. gcc4 incompatibility, as you mentioned. In the normal course of events, Arch devs will address these issues whenever the package needs updating. If you decide you need it before that happens, you have the opportunity to help the devs by working through such issues yourself, and submitting your results.

Offline

#7 2009-05-27 16:27:19

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [SOLVED] How to find out which settings were used to compile the app?

tomk wrote:

you grab the current PKGBUILD and add/remove/edit as required.

If indeed repos consist of pkgs from ABS than sure, that's what I've done.

tomk wrote:

Yes you have - simply find the svn revisions of the toochain apps that were current at the time the app's PKGBUILD was committed.

If it's used once in a blue moon, than OK, no need to add functionality (and more work for the devs) only I find useful :-) And indeed it encourages fixing bugs and moving forward rather than going back to old-but-working versions.

Thanks for your explanations.

Last edited by karol (2009-05-27 16:29:45)

Offline

#8 2009-05-29 15:12:05

karol
Archivist
Registered: 2009-05-06
Posts: 25,440

Re: [SOLVED] How to find out which settings were used to compile the app?

Well, I guess that would be it. Thanks everyone for info.
[SOLVED]

Offline

Board footer

Powered by FluxBB