のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,894人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレCygwin + MinGW + GCC 相談室 Part 6

    gcc覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    451 = :

    で、もしそうならMinGWで必要なDLLはどうやって入手してもらうのがいいのかと。
    (素人さんに)

    452 = :

    >>450
    その類の記述は少しだけみつけたんだけど、staticリンクでまったく全部
    リンクされた状態でOKてことでいいの?
    .dllを使うための.aだけがセーフってことではなく。

    455 = :

    んー、MinGW/g++で-sharedで確認すると、
     LIBSTDC++-6.DLL
     LIBGCC_S_DW2-1.DLL
    の2つに依存してるようなんだけど、どう配布するのがいいのか教えてくれw
    (GPLにしたくない、利用者は素人さん)

    457 = :

    何故VC++の話をここに持ってくるんだ

    458 = :

    *_a.libは、staticライブラリ。
    tinyxmlの方が小さくて使いやすいかもしれない。

    459 = :

    Windowsで使うのは骨だと思うけどなあ。
    何かをするたびにエンコーディングの変換をするより、読むとき一度だけ
    変換した方が効率がいいし、手間も少ないし。
    BAD_CASTってあったと思ったけど、ほんとにBAD CASTだからね。
    使えると思わないほうがいい。
    つかたらいいなって思うのはよくわかるんだけど。

    460 = :

    >>456
    libxml2.libはlibxml2.dllのインポートライブラリ
    実行時にlibxml2.dllが必要になる

    libxml2_a.libはstaticライブラリ
    実行時にlibxml2.dllは不要

    libxml2_a_dll.libもstaticライブラリ
    実行時にlibxml2.dllは不要
    libxml2_a.libとの違いはxmlDllMain(ビルド環境の際を吸収するための薄い皮)というものが含まれている
    dllを作成するときにはこちらを使うのが望ましい

    大したことやらないならrapidxmlがオススメ

    461 = :

    >>457
    すみません。vc++依存の話だとすら知りませんでした。

    >>459
    他に使えるライブラリを探すことに疲れてしまいました。

    >>458 >>460
    rapidxmlは確かに使いやすかったです。tinyxmlは記憶があるので調べたか試したと思います。
    どうしても、属性の値をxpathで取得する必要があって、最初に使えるようになったのがlibxmlでした。
    現在は、dllを使って動いているのですが、静的リンクにしたくて調べていました。

    こちらについても方法をご存知であれば教えていただきたいです。
    調査に疲れてlibxmlをつかうことにしたときと同じように挫折しそうです。

    462 = :

    >>461
    xpathかぁ
    それならpugixmlがオススメ

    463 = :

    >dllを作成するときにはこちらを使うのが望ましい
    ありがとうございます。
    こちらも静的リンクだったとは…。
    差分をとってみるとかなり似ていたので、最適化が面倒だったのかな?
    と見当違いな妄想をしていました。
    逆に、「_a.lib」が必要になる場合ってどのような場合なのでしょう?

    >>462
    「pugixml」しらべてみます。

    なるべく、実行ファイルのみでアプリの形にしたいので、静的リンクを使いたいのですが、
    「_a」付きの「iconv_a.lib」「libxml2_a.lib」を使うにはどうすればいいのでしょうか?
    リンクするライブラリを「libxml2_a.lib」→「libxml2_a.lib」と変えてみて動かなかったのは、>>456に書いたとおりです。
    と書き込もうと思って、もう一度ビルドして出力を眺めていると、
    「MSVCRT.lib」と「LIBCMTD.lib」とが競合している、とのこと。D…?→ぐぐる。
    リリースとデバッグが混じってる?いいのか?→Releaseビルド→正常終了
    (  Д ) ゚ ゚ 
    「pugixml」の後に調べてみます。

    466 = :

    だけだったね

    467 = :

    いつまでVC++限定の話続けてるんだよ

    468 = :

    ↑の話ってVC++の話なの?

    Eclipseでc++書いてるのだけど、boostを落としてきてビルドして使う際に、
    ~.a
    ~.dll.a
    ってのを
    ~.lib
    ~.dll.lib
    にしないとならないのって何で?
    気にしたこともなかった。

    470 = :

    VC++でも
    #pragma comment(lib, "~.a")とかつけとけば実行は出来るんじゃあねーかな

    ていうか質問者の人は\win32フォルダ配下のMakefile.msvcを使ったのだろうか?使ってないに100ペリカ

    471 = :

    あー、わかった。msvc用のライブラリのバイナリじゃなくて、他のコンパイラでビルドしたバイナリを使ってんだな
    そりゃー動かねーわ

    472 = :

    ハズレ

    473 = :

    てかよく見たらもう質問終わってたのね

    475 = :

    馬鹿には無理

    476 = :

    >>455
    答えがあるとは限らないけど、

    Licensing Terms | MinGW
    http://www.mingw.org/license

    MinGW-users - Conflicting libstdc++-6.dll requirements, and licensing
    http://mingw-users.1079350.n2.nabble.com/Conflicting-libstdc-6-dll-requirements-and-licensing-td6160814.html

    477 = :

    >>475
    そんな、自己紹介しなくとも。

    478 = :

    >>455
    libstdc++とlibgccにはGCCのランタイムライブラリに関する例外規定が適用される。
    http://www.gnu.org/licenses/gcc-exception.html
    http://www.gnu.org/licenses/gcc-exception-3.1-faq.html

    でも英語だからよくわかんね。

    479 = :

    英語でもよくわからないよ。
    一応、ヘッダーのリンクオーケー、商用オーケーって書いてはあるんだけど、
    何がオーケーなんだかいまいち説明がはっきりしない。
    これ書いた本人もまだ決めてないんじゃないの?
    細かい部分は、訴訟起こす時に決めますみたいな。

    480 = :

    dllwrap について教えてください。

    windows7 64bit環境で使用したいのですが、ヘルプを見ると
    --target に指定できるのは、i386-cygwin or i386-mingw32
    しかないようなのですが、64bitの場合でも i386-mingw32
    とすれば問題ないのでしょうか?
     それとも 64bit用の dllwrapがどこかにあるのでしょうか?

    OS : windows7 64bit
    MinGW :mingw-w64-bin_x86_64-mingw_20101002_4.5_sezero.zip
    MSYS :MSYS-1.0.11.exe

    481 = :

    >>480
    http://projectzero-swb.blogspot.com/2009/08/windows-7-x64mingw-x64.html

    483 = :

    >何がオーケー
    コードの配布以外何がある?

    484 = :

    >>483
    うん

    485 = :

    MinGW32でextern "C"で定義してある構造体を返す関数が
    gendefでdefを作ると@4と関数のあとについていて(他の関数には付いていない)
    それからlibを作るとその関数だけVC++からリンクできないのですが
    なにかありますか

    488 = :

    gcc -shared -o test.dll test.cpp
    gcc -o usegcc.exe use.cpp -L. -ltest
    gendef test.dll
    lib /def:test.def /machine:x86 /out:test.lib
    cl /Fe"usevc.exe" use.cpp test.lib
    usegcc.exe
    usevc.exe

    うちの環境では問題ないなぁ

    490 = :

    >>489
    gcc -shared -o test.dll test.cpp -Wl,--output-def,test1.def
    gcc -o usegcc.exe use.cpp -L. -ltest
    lib /def:test.def /machine:x86 /out:test.lib
    cl /Fe"usevc.exe" use.cpp test.lib

    gcc -shared -o test.dll test.cpp
    gcc -o usegcc.exe use.cpp -L. -ltest
    impdef test.def test.dll
    lib /def:test.def /machine:x86 /out:test.lib
    cl /Fe"usevc.exe" use.cpp test.lib
    ならいけるのでgendefの問題かもね

    491 = :

    かもね

    492 = :

    だね

    495 = :

    うん

    496 = :

    497 = :

    ふう

    498 = :

    うんこしたいんですけど。便所どこですか

    500 = :

    DOSモード?


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について