古いLinux環境にて stdint.h, linux/types.h, sys/types.h の定義が衝突するとき

C library(glibc)由来のヘッダファイル(/usr/includeおよび/usr/include/sys)の定義とカーネルヘッダ(/usr/include/linux)のヘッダファイルの定義が衝突するとき。たとえば、以下のようなエラーがでる。

lists.gt.net

In file included from /usr/include/stdlib.h:438,
from ethlinkstat.c:10:
/usr/include/sys/types.h:62: error: conflicting types for 'dev_t'
/usr/include/linux/types.h:27: error: previous declaration of 'dev_t' was here
/usr/include/sys/types.h:72: error: conflicting types for 'mode_t'
/usr/include/linux/types.h:33: error: previous declaration of 'mode_t' was here
/usr/include/sys/types.h:77: error: conflicting types for 'nlink_t'
/usr/include/linux/types.h:36: error: previous declaration of 'nlink_t' was here
In file included from /usr/include/sys/types.h:133,
from /usr/include/stdlib.h:438,
from ethlinkstat.c:10:
/usr/include/time.h:105: error: conflicting types for 'timer_t'
/usr/include/linux/types.h:45: error: previous declaration of 'timer_t' was here
In file included from /usr/include/sys/types.h:220,
from /usr/include/stdlib.h:438,
from ethlinkstat.c:10:
/usr/include/sys/select.h:78: error: conflicting types for 'fd_set'
/usr/include/linux/types.h:24: error: previous declaration of 'fd_set' was here
In file included from /usr/include/stdlib.h:438,
from ethlinkstat.c:10:
/usr/include/sys/types.h:235: error: conflicting types for 'blkcnt_t'
/usr/include/linux/types.h:158: error: previous declaration of 'blkcnt_t' was here

私の場合は int64_tの定義が stdint.h, linux/types.h, sys/types.h の間で衝突して、コンパイルができなくなっていた。

で、上のリンクへのコメントのとおりにしたら、うまく言った。具体的には、stdint.hとsys/types.hの呼び出しをlinux/types.hの前に行うこと。注意点は、いくつかのヘッダファイルを経由してlinux/types.hが呼び出される場合があるのでそれも留意すること。

Bug #144205 [1] should be of interest here. Basically you need to include
before .

国が作ったらアレだろ「世界が驚くニッポン!」

「俺すごい」をやるにしても、もう少しスマートなやり方あるでしょ。

最後のページの関係者一覧をメモ。誰かもう少しうまく自慢しましょうよと言わなかったのだろうか。

「世界が驚く日本」研究会 キーコンセプト検討委員

  • イェンス・イェンセン Wallpaper* ジャパン・エディター
  • 生駒 芳子 一般社団法人フュートゥラディションワオ 代表理事
  • 井上 智治 一般財団法人カルチャー・ヴィジョン・ジャパン 代表理事
  • 榎田 竜路 合同会社アースボイスプロジェクト 代表社員
  • 大西 洋 株式会社三越伊勢丹ホールディングス 代表取締役社長
  • 垣貫 真和 株式会社KADOKAWA 地域情報コンテンツ本部 地域情報コンテンツ局 局長
  • 桐山 登士樹 株式会社TRUNK 代表取締役
  • 澤田 且成 アイディーテンジャパン株式会社 代表取締役CEO
  • 鈴木 一義 独立行政法人国立科学博物館 産業技術史資料情報センター センター長
  • 高橋 俊宏 株式会社枻出版社『Discover Japan』統括編集長
  • 渡邉 賢一 一般社団法人元気ジャパン 代表理事

「世界が驚く日本」研究会 インバウンド視点検討委員

  • 塩川 嘉章 パリセレクトショップ Discover Japan オーナー

「世界が驚く日本」研究会 キーコンセプト発信検討委員

  • 大西 洋 株式会社三越伊勢丹ホールディングス 代表取締役社長(再掲)
  • 舘谷 徹 日本放送協会国際放送局 局長
  • 増田 宗昭 カルチュア・コンビニエンス・クラブ株式会社 代表取締役社長
  • 湯浅 智之 株式会社リヴァンプ 代表取締役社長

(五十音順、敬称略)

「世界が驚く日本」研究会 オブザーバー

  • 株式会社海外需要開拓支援機構
  • 駐日イスラエル大使館
  • 駐日オランダ王国大使館
  • 香港特別行政区政府 駐東京経済貿易代表部
  • 独立行政法人日本貿易振興機構
  • 外務省
  • 文化庁
  • 経済産業省商務情報政策局サービス政策課
  • 経済産業省商務情報政策局メディア・コンテンツ課
  • 経済産業省製造産業局生活製品課
  • 経済産業省製造産業局生活製品課伝統的工芸品産業室
  • 海外調査協力
  • 伊藤 健志 立命館アジア太平洋大学 学長室 課長
  • 白井 純 公益財団法人東芝国際交流財団 理事

企画・製作

  • 前田 泰宏 経済産業省大臣官房審議官(商務情報政策局担当)
  • 西垣 淳子 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課) 課長
  • 福永 茂和 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課) 課長補佐
  • 小林 佳菜 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課) 係長
  • 若林 達也 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課) 係長
  • 松島 さおり 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課)
  • 堀越 瑞紀 経済産業省商務情報政策局生活文化創造産業課(クリエイティブ産業課)

 

「世界が驚く日本」研究会事務局

  • 池嶋 徳佳 株式会社リヴァンプ
  • 鈴木 祥子 株式会社リヴァンプ

編集長

  • 高橋俊宏(株式会社枻出版社『Discover Japan』統括編集長)

編集

  • 落合真林子(株式会社枻出版社『Discover Japan』)
  • 八木美貴
  • 高口陽子

アートディレクター

  • 千葉直樹(PEACS Inc.)

DTP

  • 星由紀子(PEACS Inc.)

校正

  • 澤木由希子(PEACS Inc.)

(翻訳と印刷は略)

あと、なんで横書きなのに左開きなんだろう(縦書きのページ構成)。34ページから39ページの図はなんともデザインのための図。

とはいえ、こういう侮蔑当て字はあれだなぁ。
togetter.com

創作料理が伝統への例

高野 秀行:謎のアジア納豆―そして帰ってきた〈日本納豆〉で以下のような例を読んだような。少なくともその村では…という内容だった。

― 高野さんが納豆旅行の末に行き着いたのが、日本の岩手県西和賀町で作られている「雪納豆」でした。

高野: 日本の納豆は後半に出てきますが、これはアジアの納豆を調べて行くうちに、日本の納豆はどうだろうと思って調べ始めたという時系列通りの流れですね。

最後の「雪納豆」は世界的に見てもすごく変わった作り方をしています。納豆はある程度の温度がないと発酵しないんですよ。でも、それを雪の中に入れるわけで、冷やしているんですよね。それが謎。また、ぜひこの本を読んでほしいのですが、作り方もかなり特徴的です。

― 「雪納豆」に辿り着いたところで、この本は終わっていますが…

高野: ところが最近知ったのですが、新潟の山古志村でも雪納豆が作られてあるという話を耳にしたんです。20年前にNHKが取材をして放送しているそうなんですよ。しかも、こちらもかなり独特な作り方をしていて、僕も取材をしなくちゃいけないなと思っています。

『謎のアジア納豆 そして帰ってきた〈日本納豆〉』著者 高野秀行さん bestseller's interview 第80回

matome.naver.jp

ilovefamily.hatenablog.com

最初のツイートから始まる流れをまとめたTogetterの記事を読んで思い出したのは、竹内巨麿の話。その話を聞いた時の私の感想は以下の通り。

  • 近代竹内文献の持ち主の竹内巨麿が文献の解釈をするのではなく、尋ねてきた人がその文献を解釈してアイデアを付け加えていくという話は、ダメなオープンサイエンスの例だなと思った
    • 解釈者の要望に応じて、都合のよい事物を竹内巨麿が用意する。しかも、竹内巨麿自身がそのような事物を作れないと思われている。事物に信ぴょう性を与えている
    • データの提供者が解釈者の要望に応じるときに科学的な話から偽書的話に変わって行ってしまう
    • オープンサイエンスを実現するときは、ある解釈が提示されたときに「そういえば、公開していなかったのですがこういうデータもありました」というデータの追加を厳に禁止しないといけないというのがこの話からようわかる
  • また、一方でうまくいったUGCの例であるとも思った。ある面白そうな解釈を発展させ、深化させるように場や機能、コンテンツの元ネタを提供していくというスタイル
  • UGCの観点でみると竹内巨麿はCGMのシステムを構築する凄腕ディレクター&プログラマーのようにも感じる。

11/7「近代日本の偽史言説 その生成・機能・受容」参加記 - 発声練習より)