• ベストアンサー
  • すぐに回答を!

WindowsアプリケーションをMacで作れなくて困っていますて

  • 質問No.4359792
  • 閲覧数2545
  • ありがとう数1
  • 気になる数0
  • 回答数6
  • コメント数0
 ダウンロードした自作アプリケーションにWindowsでつくられた自作アプリケーションのC言語ソースがついていました。そこで、Mac OS Xで同じ物を作ろうと思いソースをコピー&ペーストしビルドして実行をしましたがエラーとなってしまいました。
 Windows C言語とMac C言語は何か違う物なのでしょうか?ご回答お願いします

質問者が選んだベストアンサー

  • 回答No.4
  • ベストアンサー

ベストアンサー率 69% (495/711)

> Windows C言語とMac C言語は何か違う物なのでしょうか?

C言語自体はどちらの環境でも基本的に違わないと思っていいです。
標準Cライブラリ (参考URLを参照) の機能だけを使ってプログラムを書けば、WindowsとMac OS Xとどちらでもビルド・実行できるものを作れます。

しかし、標準Cライブラリの範囲を超えてWindowsに固有の機能を使っているCプログラムであれば、そのままではMac OS Xでビルドすることはできません。
たとえば、Windows用のCプログラムではwindows.hというヘッダファイルをincludeしている場合が多いのですが、このヘッダファイルは標準CライブラリもMac OS Xにもありません。もちろん、ヘッダファイルだけをWindowsからコピーしてきても無駄です。
補足コメント
noname#71253
分かりやすい回答ありがとうございました。
皆さんの回答をみていると元のプログラムのソースから自分で作らないといけないということですか。引き続きご回答お願いします。
投稿日時:2008/09/28 15:50

その他の回答 (全5件)

  • 回答No.6

ベストアンサー率 69% (495/711)

#4です。

> 元のプログラムのソースから自分で作らないといけないということですか。
> 引き続きご回答お願いします。
と言われましても、それを判断するのに必要な情報が質問者から提供されていないので無理です。
そもそも、ビルドできたのかできなかったのかさえ曖昧なままです。

たとえば、
・そのダウンロードしたアプリケーションの名前やURL
・「エラーになってしまいました」というそのエラーの内容
あたりを投稿していただければ進展があるかもしれません。
  • 回答No.5

ベストアンサー率 35% (166/466)

ビルドできたのであれば、基本的にはソース自体には問題がないと
いう事だと思います。

windows.hなどのWinAPIやCOMとかATL/WTLなどの機能を使用している
場合はそもそもコンパイルできませんから。
ビルド(コンパイルとリンク)ができたならC/C++標準ライブラリだけで
構築されていたのだと思います。

ただ、標準ライブラリだけで作られていてもバイナリ上はまったく
互換性がないのでバイナリや機械語などの処理部分を持っていると
正常に動作しないと思います。
あとは、OSのシステムコールとかを呼び出している場合も正常に
動作しないことがあると思います。
  • 回答No.3

ベストアンサー率 31% (1620/5104)

そもそも、

> エラーとなってしまいました。

どんなエラーが出たを提示していないところに問題がありそうです。
エラーメッセージの全文を正確に載せてください。
補足コメント
noname#71253
確かに問題がありました。
Xcode Toolsというソフトを使っているのですが、そのソフトは、下の方のバーにエラーが出ているというマーク『×』がでているだけです。ちなみに20個です。

自分で一から作った方がよいのでしょうか・・・。
投稿日時:2008/09/27 17:45
  • 回答No.2

ベストアンサー率 31% (1620/5104)

いや、でも、

> ビルドして実行をしましたがエラーとなってしまいました。

こう書かれてますので、ビルドはできたけど実行できなかった、
と解釈するのが自然であるような気が…。

実際のところどうなんでしょ?
ビルドはできたんですか? >質問者さん
補足コメント
noname#71253
すみません!説明不足でした!
ビルドして実行というのはボタンが二つともいっしょになっているソフトを使っているのでビルドして実行という書き方をしています。ビルドだけのボタンがあり、それを押すとちゃんとできてるみたいです。
投稿日時:2008/09/27 17:31
  • 回答No.1

ベストアンサー率 47% (287/608)

Windows特有の機能を呼び出しているC言語プログラムのソースコードを
他のOSでコンパイルすることはできませんよ。
補足コメント
noname#71253
aigaionさんの回答をみると、やっぱり自分で作らないといけないということですね。
投稿日時:2008/09/27 17:49
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

ピックアップ

ページ先頭へ