2014-12-02 48 views
1

我想在我的生產系統上安裝taglib-ruby。我嘗試以下步驟:如何在生產上安裝taglib-ruby

git clone [email protected]:taglib/taglib.git 
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release 
make 
sudo make install 

當我運行make一步,我得到以下錯誤:

[[email protected]]$ make 
Scanning dependencies of target tag 
[ 0%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/mpegfile.cpp.o 
[ 1%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/mpegproperties.cpp.o 
[ 2%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/mpegheader.cpp.o 
[ 3%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/xingheader.cpp.o 
[ 4%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v1/id3v1tag.cpp.o 
[ 5%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v1/id3v1genres.cpp.o 
[ 6%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2framefactory.cpp.o 
[ 7%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2synchdata.cpp.o 
[ 8%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2tag.cpp.o 
[ 9%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2header.cpp.o 
[ 10%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2frame.cpp.o 
[ 11%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2footer.cpp.o 
[ 12%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/id3v2extendedheader.cpp.o 
[ 13%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/attachedpictureframe.cpp.o 
[ 14%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/commentsframe.cpp.o 
[ 15%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/eventtimingcodesframe.cpp.o 
[ 16%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/generalencapsulatedobjectframe.cpp.o 
[ 17%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/ownershipframe.cpp.o 
[ 18%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/popularimeterframe.cpp.o 
[ 19%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/privateframe.cpp.o 
[ 20%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/relativevolumeframe.cpp.o 
[ 21%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/synchronizedlyricsframe.cpp.o 
[ 22%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/textidentificationframe.cpp.o 
[ 23%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/uniquefileidentifierframe.cpp.o 
[ 24%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/unknownframe.cpp.o 
[ 25%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/unsynchronizedlyricsframe.cpp.o 
[ 26%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/urllinkframe.cpp.o 
[ 27%] Building CXX object taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/chapterframe.cpp.o 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:92: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:92: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:92: error: ‘uint’ does not name a type 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:97: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:97: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:97: error: ‘uint’ does not name a type 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:102: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:102: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:102: error: ‘uint’ does not name a type 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:107: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:107: error: reference to ‘uint’ is ambiguous 
/usr/include/sys/types.h:153: error: candidates are: typedef unsigned int uint 
/home/appuser/taglib-master/taglib/toolkit/taglib.h:66: error:     typedef unsigned int TagLib::uint 
/home/appuser/taglib-master/taglib/mpeg/id3v2/frames/chapterframe.cpp:107: error: ‘uint’ does not name a type 
make[2]: *** [taglib/CMakeFiles/tag.dir/mpeg/id3v2/frames/chapterframe.cpp.o] Error 1 
make[1]: *** [taglib/CMakeFiles/tag.dir/all] Error 2 
make: *** [all] Error 2 

的gcc --version

gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11) 
Copyright (C) 2010 Free Software Foundation, Inc. 
This is free software; see the source for copying conditions. There is NO 
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 
+1

您是否嘗試過如果構建taglib的發佈標籤有效?克隆後試試'git checkout v1.7.2'。 – robinst 2014-12-02 12:47:27

+0

請嘗試gcc-4.2而不是 – 2014-12-02 18:49:24

+0

您需要將您的gcc更新到最新版本,請問您的linux發行版是什麼? – pshoukry 2014-12-03 09:37:32

回答

0

如果運行

dpkg -L libc6-dev | grep types.h 

你會發現這是types.h中的libc6-dev軟件包的一部分,所以你有兩個選擇:

  1. 更新你的系統包
  2. 安裝您的GCC和庫的第二個版本,按照這個answer他有一個很好的說明。