ここから本文です

c言語やc++についての質問です. GCCでコンパイルしたファイルを、GCCが入って...

frw********さん

2020/3/2623:30:48

c言語やc++についての質問です.

GCCでコンパイルしたファイルを、GCCが入っていないpcで実行したいのですが、
どうすればよいのでしょうか.

閲覧数:
56
回答数:
4

違反報告

ベストアンサーに選ばれた回答

bas********さん

2020/3/2712:34:25

どのOSあるいはコンパイラでコンパイルしたのでしょうか。

gccと一言にいっても、Cygwin, MinGW, Mac等にインストールされているもの では全く違うようです。
(基本的には同じですが、いくつか違いがあるようで…)

MinGW の場合は、

すごい長ったらしいオプションがあったはずです。(うろ覚え. 手元にないため)

調べてみると、

https://siuncyclone.hatenablog.com/entry/2018/07/21/194629

にありました。

これにある、-static -lstdc++ -lgcc -lwinpthread をオプションとしてつけてコンパイルすれば、MinGW が入っていないPCでも動かすことができます。

ただし、同じOSで。です。

Windows でコンパイルしたものを Macで…は不可能です。
(仮想OSを入れれば可能だとは思うが、そこまでするかな)

質問した人からのコメント

2020/3/28 12:20:16

回答ありがとうございます.
Linuxでコンパイルしたものをwindowsで実行しようとしていました.
windowsでコンパイルし直したらできました.

ベストアンサー以外の回答

1〜3件/3件中

並び替え:回答日時の
新しい順
|古い順

yuk********さん

2020/3/2716:37:00

別に何をする必要もない。
ただ単に生成された実行ファイルをどうにかして目的のPCに持っていけばいいだけの話。

Hermitさん

2020/3/2700:05:37

良くは知らないけど、Windows なら

objdump -x 実行ファイル名 | grep DLL
で、
vma: Hint Time Forward DLL First
DLL Name: GDI32.dll
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: msvcrt.dll
DLL Name: USER32.dll
DLL Name: WINMM.DLL

みたいに出て来るから、gcc が使ってそうなのを
一緒に持っていけばいいのでは?
MinGWのは、基本要らなかった気がしますが、
cygwin のは必要なんでしたっけ?

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

プロフィール画像

カテゴリマスター

あみやさん

2020/3/2700:04:29

コンパイルして実行ファイルになっていれば、コンパイラはもう必要ありません。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる