This repository has been archived by the owner. It is now read-only.

id3lib does not compile with Clang #10915

Closed
sjmadsen opened this Issue Mar 13, 2012 · 11 comments

Comments

Projects
None yet
6 participants

https://gist.github.com/2030348

It's actually not the library, but the four demos that come with it. Unfortunately, it's enough that the install fails.

Clang is being overly picky about the type of the first argument to main():

demo_convert.cpp:87:5: error: first parameter of 'main' (argument count) must be of type 'int'
int main( unsigned int argc, char * const argv[])

Repeats for demo_tag.cpp, demo_copy.cpp and demo_info.cpp.

brew doctor complains about a few things, but none are applicable to this problem.

Warning: "config" scripts exist outside your system or Homebrew directories.
./configure scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:

/Volumes/User/Steve/.rbenv/shims/passenger-config

Warning: Setting DYLD_LIBRARY_PATH can break dynamic linking.
You should probably unset it.

Warning: Some installed formula are missing dependencies.
You should brew install the missing dependencies:

brew install fribidi libass

Run brew missing for more details.

Contributor

adamv commented Mar 13, 2012

Could probably patch the project to skip the examples, though this should be reported upstream as well.

Contributor

Sharpie commented Mar 13, 2012

Clang is being overly picky about the type of the first argument to main():

An int is not the same thing as an unsigned int. Every C standard I have ever seen declares the argument count to be of type int---therefore it seems to me that Clang is quite right in pointing out that id3lib is playing fast and loose with the language.

Member

mxcl commented Mar 14, 2012

Easy patch. Do we need to document how to do easy patches better? Hardly anybody ever submits them and tickets like this stay open because we're too busy.

I was buried yesterday and didn't have time to try a patch. I will do so this morning.

Contributor

adamv commented Mar 14, 2012

Fixed in b933aab

@adamv adamv closed this Mar 14, 2012

I'm still getting:

Warning: "config" scripts exist outside your system or Homebrew directories.
./configure scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:

/usr/local/var/rbenv/shims/passenger-config

Was this fix supposed to resolve this issue?

Contributor

mistydemeo commented Aug 31, 2013

@npearson72 The doctor warning you're getting is unrelated to this issue.

Thanks @mistydemeo. Is the error I'm getting a known issue with a fix? Should I submitted a new ticket for it?

Contributor

mistydemeo commented Aug 31, 2013

It's just a warning. -config scripts are typically used by software to provide build flags, and having -config scripts in your PATH can (sometimes) cause software to try to link against that version instead of homebrew-provided versions. We can't really determine ahead of time which -config scripts will or won't cause problems so we print them as FYIs.

Cool, thank you.

@xu-cheng xu-cheng locked and limited conversation to collaborators Feb 16, 2016

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.