Vine Linux バグトラッキングシステム

課題の詳細を表示 コメントにジャンプ ] 課題の履歴 ] 印刷 ]
IDプロジェクトカテゴリ登録日最終更新
0002832Vine Linux1 バグ2014-11-28 23:412014-12-01 22:14
報告者shuei 
担当者Takemikaduchi 
優先度再現性毎回 
状態完了解決状況実装済 
バージョンVineSeed 
修正予定バージョン修正済バージョンVineSeed 
概要0002832: clangでコンパイル/リンクに失敗する
説明clang/clang++でリンクに失敗します。また、clang++でlibstdc++のヘッダファイルを#includeできずコンパイルに失敗します。

ヘッダファイルとライブラリのサーチパスが正しく設定されていないのだと思います。また、specファイルで定義されていない%gcc_versionという文字列がヘッダファイルの検索パスに紛れ込んでいます。

対応のほど宜しくお願いします
再現方法1) clang/clang++でリンクに失敗する例です。

% cat hello.c
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   puts("Hello, World!\n");
   return EXIT_SUCCESS;
}

% clang -v hello.c
clang version 3.5.0 (tags/RELEASE_350/final)
Target: i386-vine-linux-gnu
Thread model: posix
 "/usr/bin/clang" -cc1 -triple i386-vine-linux-gnu -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -main-file-name hello.c -mrelocation-model static -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -target-cpu pentium4 -target-linker-version 2.23.2 -v -dwarf-column-info -resource-dir /usr/bin/../lib/clang/3.5.0 -internal-isystem /usr/local/include -internal-isystem /usr/bin/../lib/clang/3.5.0/include -internal-externc-isystem /usr/include -internal-externc-isystem /usr/lib/gcc/i686*/%{gcc_version}/include -fdebug-compilation-dir /home/shuei -ferror-limit 19 -fmessage-length 80 -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o /tmp/hello-c8c446.o -x c hello.c
clang -cc1 version 3.5.0 based upon LLVM 3.5.0 default target i386-vine-linux-gnu
ignoring nonexistent directory "/usr/lib/gcc/i686*/%{gcc_version}/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/bin/../lib/clang/3.5.0/include
 /usr/include
End of search list.
 "/usr/bin/ld" --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o a.out /usr/bin/../lib/crt1.o /usr/bin/../lib/crti.o crtbegin.o -L/usr/bin/../lib -L/lib -L/usr/lib /tmp/hello-c8c446.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed crtend.o /usr/bin/../lib/crtn.o
/usr/bin/ld: crtbegin.o が見つかりません: そのようなファイルやディレクトリはありません
/usr/bin/ld: -lgcc が見つかりません
/usr/bin/ld: -lgcc_s が見つかりません
clang: error: linker command failed with exit code 1 (use -v to see invocation)


2) clang++でリンクに失敗する例です

% cat hello.cc
#include <iostream>
#include <cstdlib>

using namespace std;

int main(void)
{
   cout << "Hello World" << endl;
   return EXIT_SUCCESS;
}

% clang++ -v -c hello.cc
clang version 3.5.0 (tags/RELEASE_350/final)
Target: i386-vine-linux-gnu
Thread model: posix
 "/usr/bin/clang" -cc1 -triple i386-vine-linux-gnu -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -main-file-name hello.cc -mrelocation-model static -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -target-cpu pentium4 -target-linker-version 2.23.2 -v -dwarf-column-info -coverage-file /home/shuei/hello.o -resource-dir /usr/bin/../lib/clang/3.5.0 -internal-isystem /usr/local/include -internal-isystem /usr/bin/../lib/clang/3.5.0/include -internal-externc-isystem /usr/include -internal-externc-isystem /usr/lib/gcc/i686*/%{gcc_version}/include -fdeprecated-macro -fdebug-compilation-dir /home/shuei -ferror-limit 19 -fmessage-length 80 -mstackrealign -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -o hello.o -x c++ hello.cc
clang -cc1 version 3.5.0 based upon LLVM 3.5.0 default target i386-vine-linux-gnu
ignoring nonexistent directory "/usr/lib/gcc/i686*/%{gcc_version}/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/bin/../lib/clang/3.5.0/include
 /usr/include
End of search list.
hello.cc:1:10: fatal error: 'iostream' file not found
#include <iostream>
         ^
1 error generated.
タグ設定されていません。
archx86, x86_64
パッケージclang-3.5.0-1vl7
添付ファイル

- 関連

-  コメント
(0008972)
Takemikaduchi (管理者)
2014-11-29 20:03

ご報告ありがとうございます。
現象を確認しました。

修正パッケージを作成しましたので、動作確認をお願いします。

clang-3.5.0-2vl7.{i686,x86_64}.rpm
clang-analyzer-3.5.0-2vl7.{i686,x86_64}.rpm
clang-devel-3.5.0-2vl7.{i686,x86_64}.rpm
clang-doc-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-3.5.0-2vl7.{src,i686,x86_64}.rpm
llvm-devel-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-doc-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-libs-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-ocaml-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-ocaml-devel-3.5.0-2vl7.{i686,x86_64}.rpm
llvm-ocaml-doc-3.5.0-2vl7.{i686,x86_64}.rpm

以上、よろしくお願いいたします。
(0008974)
shuei (報告者)
2014-12-01 17:11

対応していただき、ありがとうございました。修正されていることを確認しました。
(0008975)
iwamoto (管理者)
2014-12-01 22:14

> 修正されていることを確認しました。

ご報告ありがとうございました。
完了にします。

- 課題の履歴
変更日 ユーザー名 項目 変更内容
2014-11-28 23:41 shuei 新規課題
2014-11-29 20:03 Takemikaduchi コメント追加: 0008972
2014-11-29 20:03 Takemikaduchi 担当者 => Takemikaduchi
2014-11-29 20:03 Takemikaduchi 状態 新規 => テスト待ち
2014-12-01 17:11 shuei コメント追加: 0008974
2014-12-01 22:14 iwamoto コメント追加: 0008975
2014-12-01 22:14 iwamoto 状態 テスト待ち => 完了
2014-12-01 22:14 iwamoto 解決状況 不明 => 実装済
2014-12-01 22:14 iwamoto 修正済バージョン => VineSeed


Copyright © 2000 - 2024 MantisBT Team
Copyright © 2012 - 2024 Project Vine
Powered by Mantis Bugtracker