私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレCygwin + MinGW + GCC 相談室 Part 3
gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ★
レスフィルター : (試験中)
msysはUNIX系用に書かれたアプリをWindows環境で
makeや./configureするためだけにあるようなもんだから
純粋なWindowsアプリ作るときは、いらんだろ。
それともWindowsアプリ書くときも、mv や cp や sh コマンドを使うヤツがおるのか?
makeや./configureするためだけにあるようなもんだから
純粋なWindowsアプリ作るときは、いらんだろ。
それともWindowsアプリ書くときも、mv や cp や sh コマンドを使うヤツがおるのか?
レスありがとうございますー。
なるほど、msysからなら相対パスで指定できたのですか。
実はmsysは導入してるんですが、今コンパイルしようとしてるソースがeclipseのプロジェクトのもので、
eclipseのbuildセッティングからオプション指定しなければいけないが気がするのです。
eclipseからのオプション指定付きのコンパイルは、絶対パスでですが成功したのでとりあえず解決しました。
eclipseからも相対パスで指定できたら便利なのかもしれませんが、スレ違いなのでここではやめておきます。
色々ご教示くださりありがとうございましたm(_ _)m
なるほど、msysからなら相対パスで指定できたのですか。
実はmsysは導入してるんですが、今コンパイルしようとしてるソースがeclipseのプロジェクトのもので、
eclipseのbuildセッティングからオプション指定しなければいけないが気がするのです。
eclipseからのオプション指定付きのコンパイルは、絶対パスでですが成功したのでとりあえず解決しました。
eclipseからも相対パスで指定できたら便利なのかもしれませんが、スレ違いなのでここではやめておきます。
色々ご教示くださりありがとうございましたm(_ _)m
よく分からないんだが、prefix を適当なマクロ名(たとえばSRC_DIR)で定義しておいて
-I"$SRC_DIR/include" とか書けばいい、という話?
Makefile内ではダブルクオートで囲んであってもマクロ展開が行なわれる。
ダブルクオート付きのまま実行されるので SRC_DIR=C:/Program Files/GnuWin32 のように
スペースを含んでいても無問題。
-I"$SRC_DIR/include" とか書けばいい、という話?
Makefile内ではダブルクオートで囲んであってもマクロ展開が行なわれる。
ダブルクオート付きのまま実行されるので SRC_DIR=C:/Program Files/GnuWin32 のように
スペースを含んでいても無問題。
>>601-602
俺はWindows環境でMinGWを使ってプログラムを書くときはいつも
Makefileを書いてるからmsysがないと不便かもー。
exe単体(dll不要)で実行できるのがMinGWのいいところだから
俺的には MinGW + msys = Cygwin ではない。
俺はWindows環境でMinGWを使ってプログラムを書くときはいつも
Makefileを書いてるからmsysがないと不便かもー。
exe単体(dll不要)で実行できるのがMinGWのいいところだから
俺的には MinGW + msys = Cygwin ではない。
>605
-mno-cygwin つければ cygwin1.dll 使わなくなるんだから、MinGW + msys ⊂ Cygwin とか混ぜっ返してみる。
-mno-cygwin つければ cygwin1.dll 使わなくなるんだから、MinGW + msys ⊂ Cygwin とか混ぜっ返してみる。
>>606
なるほろ。どうもです。
なるほろ。どうもです。
>>605
nmake 使った事無いの?
nmake 使った事無いの?
>>609
聖徳太子って知ってる?
聖徳太子って知ってる?
MinGWに付いているwindres.exeは
windres --language=0411 ファイル名.rc
とすればShift-JISのrcファイルを読めるけど、UTF-16のrcファイルは読めますか?
languageオプションに指定できる値の情報がどこにも無くて、UTF-16に対応してるかどうか分からない…
(ちなみにVC9のrc.exeは文字コードを自動判定してるようでShift-JISもUTF-16もオプションなしで読めるみたい)
windres --language=0411 ファイル名.rc
とすればShift-JISのrcファイルを読めるけど、UTF-16のrcファイルは読めますか?
languageオプションに指定できる値の情報がどこにも無くて、UTF-16に対応してるかどうか分からない…
(ちなみにVC9のrc.exeは文字コードを自動判定してるようでShift-JISもUTF-16もオプションなしで読めるみたい)
windresのソースのこの辺り↓を見るしかなさげ?
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.c?rev=1.10&cvsroot=src
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.h?rev=1.7&cvsroot=src
なんだかコードページしか指定できないように見える・・・。
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.c?rev=1.10&cvsroot=src
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.h?rev=1.7&cvsroot=src
なんだかコードページしか指定できないように見える・・・。
G++でのコンパイルやリンク実行時に自分で作ったバッチファイルを引数として噛ませたいのですが、どのように書けばできますでしょうか??
どなたかご教示頂けると幸いです。
どなたかご教示頂けると幸いです。
> G++でのコンパイルやリンク実行時に自分で作ったバッチファイルを引数として噛ませたい
詳しく
詳しく
すいません、Windowsのコマンドラインから使う場合の話です。
>>620さん
レスありがとうございます。
例えば、
g++ sample.o -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..
のようにインクルードファイルを呼び出してリンクしたいとき、
-lC:/aa.. 以下を毎回打つのは面倒なので、inc.batのようなバッチファイルにまとめてしまい
G++ sample.o inc.bat
のような感じでリンクできるようにしたいのですが、
上のような書式では失敗するので、inc.batの前になにか必要なのかな??という疑問です。
>>620さん
レスありがとうございます。
例えば、
g++ sample.o -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..
のようにインクルードファイルを呼び出してリンクしたいとき、
-lC:/aa.. 以下を毎回打つのは面倒なので、inc.batのようなバッチファイルにまとめてしまい
G++ sample.o inc.bat
のような感じでリンクできるようにしたいのですが、
上のような書式では失敗するので、inc.batの前になにか必要なのかな??という疑問です。
レスありがとうございます。
すいません、makefileがどんなものかは大体分かっているのです。
今回はバッチでどうしてもやりたい事情がありまして・・
すいません、makefileがどんなものかは大体分かっているのです。
今回はバッチでどうしてもやりたい事情がありまして・・
>>623
SET CXX=B:\MinGW\bin\g++
SET CFLAGS=-IB:\hoge\include -IB:\fuga\include
SET LDFLAGS=-LB:\hoge\lib -LB:\fuga\lib -lhoge -lfuga
%CXX% %CFLAGS% %LDFLAGS% %*
みたいなのをmygcc.batに保存して
> mygcc sample.cc
でコンパイル。オプションとかは適当に追加してくれ。
バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…
SET CXX=B:\MinGW\bin\g++
SET CFLAGS=-IB:\hoge\include -IB:\fuga\include
SET LDFLAGS=-LB:\hoge\lib -LB:\fuga\lib -lhoge -lfuga
%CXX% %CFLAGS% %LDFLAGS% %*
みたいなのをmygcc.batに保存して
> mygcc sample.cc
でコンパイル。オプションとかは適当に追加してくれ。
バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…
>>619
ふつうにバッチファイルじゃいかんの?
unko.bat の中身はこう書く
g++ %* -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..
で、コンパイルはこう
C> unko sample.o
これも事情があってダメなの?
ふつうにバッチファイルじゃいかんの?
unko.bat の中身はこう書く
g++ %* -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..
で、コンパイルはこう
C> unko sample.o
これも事情があってダメなの?
レスありがとうございます。
なるほど、バッチの中にg++も入れたりできるんですね。
ただ、それだとやっぱりだめで、事情っていうのが、wxWidgetsっていうGUIツールキットを使っていて、それを使ったリンク時に
g++ sample.o -LC:/wx/(以下略)...
みたいにするんですが、どうもWindows版だと
g++ -LC:/wx/(以下略)... sample.o
みたいに、オプションがインプットファイルより前にくるとエラーになるみたいなんです。
makefileを使わないと言っても、eclispeのexcutableプロジェクトなので、makefileは勝手に生成される=使っています。
勝手に生成されるので自由には編集できない、ってことです。
で、そのmakefileのオプションの部分だけをバッチにしたいんです。
直接全部手書きでもよいのですが、かなり長いのでスマートじゃないなぁと思いまして・・
>>バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…
初心者なので大目に見てください(^^;)
環境変数ってのはなんの環境変数でしょうか??
なるほど、バッチの中にg++も入れたりできるんですね。
ただ、それだとやっぱりだめで、事情っていうのが、wxWidgetsっていうGUIツールキットを使っていて、それを使ったリンク時に
g++ sample.o -LC:/wx/(以下略)...
みたいにするんですが、どうもWindows版だと
g++ -LC:/wx/(以下略)... sample.o
みたいに、オプションがインプットファイルより前にくるとエラーになるみたいなんです。
makefileを使わないと言っても、eclispeのexcutableプロジェクトなので、makefileは勝手に生成される=使っています。
勝手に生成されるので自由には編集できない、ってことです。
で、そのmakefileのオプションの部分だけをバッチにしたいんです。
直接全部手書きでもよいのですが、かなり長いのでスマートじゃないなぁと思いまして・・
>>バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…
初心者なので大目に見てください(^^;)
環境変数ってのはなんの環境変数でしょうか??
>>628
eclipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
-LC:/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。
eclipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
-LC:/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。
チラシの裏
MinGWでコモンコントロール使うなら
#define _WIN32_IE 0x0300
とか必須
MinGWでコモンコントロール使うなら
#define _WIN32_IE 0x0300
とか必須
チラシの裏
ncurses5.6 cygncurses-8.dll 文字化け 日本語
→ use_legacy_coding(2) 追加
ncurses5.6 cygncurses-8.dll 文字化け 日本語
→ use_legacy_coding(2) 追加
EIPに入ってるアドレスから共有ライブラリやEXEのベースアドレスを調べたいのですが
windowsのPSAPIを使うやりかたで良いのでしょうか?
cygwinではこう書くみたいなやりかたはありますか?
windowsのPSAPIを使うやりかたで良いのでしょうか?
cygwinではこう書くみたいなやりかたはありますか?
Win32環境にCygwinかMinGWのどちらかを入れようと迷っているのですが、
何か判断基準になるものはありますか?
何か判断基準になるものはありますか?
CygwinはUnix環境として使うなら便利だけど、窓の開発したいだけなら開発環境に組み込まれてたりするMinGWのほうがいいんじゃね?
レス下さった方々ありがとうございますm(_ _)m
お礼遅れてすいません。
>>lipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
オプション設定するところあるのですが、-mwindowsというのを設定しなくてはいけなくて、それ用のフォームがなくて困ってたのですが、全部まとめてかけるところが見つかってそっちに書くことで解決しました。
>>/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
その通りです!
>>それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。
そうだったんですか!知りませんでした。貴重な情報ありがとうございます。
>>627 を試してみたのか?
バッチに渡した引数は %* の位置に展開されるのよ?
これも知りませんでした汗
そうだったのですか。なるほど!
ありがとうございます。
>>バッチってバッチファイルのことじゃなくて、ライブラリのファイル名を羅列したファイルのつもりなんだろう。
そんな感じです(^^;)
>>MinGWでコモンコントロール使うなら
>>#define _WIN32_IE 0x0300
>>とか必須
>>ncurses5.6 cygncurses-8.dll 文字化け 日本語
>>→ use_legacy_coding(2) 追加
ありがとうございます!
お礼遅れてすいません。
>>lipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
オプション設定するところあるのですが、-mwindowsというのを設定しなくてはいけなくて、それ用のフォームがなくて困ってたのですが、全部まとめてかけるところが見つかってそっちに書くことで解決しました。
>>/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
その通りです!
>>それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。
そうだったんですか!知りませんでした。貴重な情報ありがとうございます。
>>627 を試してみたのか?
バッチに渡した引数は %* の位置に展開されるのよ?
これも知りませんでした汗
そうだったのですか。なるほど!
ありがとうございます。
>>バッチってバッチファイルのことじゃなくて、ライブラリのファイル名を羅列したファイルのつもりなんだろう。
そんな感じです(^^;)
>>MinGWでコモンコントロール使うなら
>>#define _WIN32_IE 0x0300
>>とか必須
>>ncurses5.6 cygncurses-8.dll 文字化け 日本語
>>→ use_legacy_coding(2) 追加
ありがとうございます!
>>640
%* や、バッチファイルのその他の機能の説明を読んだ方がよさそう。
Windowsの「スタート」ボタン→「ヘルプとサポート」
→検索窓に「バッチ」と入力して検索→「バッチ パラメータを使用する」
→検索窓に「シェル」と入力して検索 →「コマンド シェルの概要」
%* や、バッチファイルのその他の機能の説明を読んだ方がよさそう。
Windowsの「スタート」ボタン→「ヘルプとサポート」
→検索窓に「バッチ」と入力して検索→「バッチ パラメータを使用する」
→検索窓に「シェル」と入力して検索 →「コマンド シェルの概要」
1.cygwin.batから起動したbash上で「ls --color」を実行→color表示。うっわ見づらいなコレ
2.「ls」を実行→あれ、color表示のままだぞ?
3.「ls --color=none」を実行→うむ、color表示じゃなくなった
4.「ls」を実行→あれ、やっぱcolor表示のままだぞ・・・?
5.「source ~/.bashrc」を実行後、「ls」を実行→よし、今度こそcolor表示じゃなくなった
6.「exit」を実行後、cygwin.batからbashを起動し「ls」を実行→ひいい、color表示のままだぞ!?
7.(´・ω・`)
*cygwin.bat----------
@echo off
C:
chdir C:\cygwin\bin
bash --login -i
*.bashrc(インスト時に手を加えたところだけ抜粋)------
export JLESSCHARSET=japanese-sjis
alias ls="ls -F --color=none --show-control-chars"
export LANG=ja_JP.SJIS
他のCygwinプロセスは起動してません。
.bashrcをちゃんと読んでない気がするのですが、lsのデフォルト動作を非カラー表示に
戻す方法をご教授いただければ幸いです。
2.「ls」を実行→あれ、color表示のままだぞ?
3.「ls --color=none」を実行→うむ、color表示じゃなくなった
4.「ls」を実行→あれ、やっぱcolor表示のままだぞ・・・?
5.「source ~/.bashrc」を実行後、「ls」を実行→よし、今度こそcolor表示じゃなくなった
6.「exit」を実行後、cygwin.batからbashを起動し「ls」を実行→ひいい、color表示のままだぞ!?
7.(´・ω・`)
*cygwin.bat----------
@echo off
C:
chdir C:\cygwin\bin
bash --login -i
*.bashrc(インスト時に手を加えたところだけ抜粋)------
export JLESSCHARSET=japanese-sjis
alias ls="ls -F --color=none --show-control-chars"
export LANG=ja_JP.SJIS
他のCygwinプロセスは起動してません。
.bashrcをちゃんと読んでない気がするのですが、lsのデフォルト動作を非カラー表示に
戻す方法をご教授いただければ幸いです。
質問には「.bashrcが読み込まれているかどうか分かりません」なんて書かれてないだろう
>>644
http://www.google.com/search?q=cygwin+bashrc+%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BE%E3%81%AA%E3%81%84
>>644
http://www.google.com/search?q=cygwin+bashrc+%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BE%E3%81%AA%E3%81%84
【質問】 Xfce4を利用できない
【希望】 Xfce4デスクトップ環境を利用したい
【やったこと】
http://www.compuspec.net/reference/os/cygwin/installation.shtml
上記のサイトを参考にしました。
setup.exeより、リポジトリ「ftp://sunsite.dk/projects/cygwinports/」を追加し、
Xfce4関連のパッケージ全てをインストール。.bashrcに
PATH=/opt/xfce4/bin:$PATH
export PATH
を追記し、bash上からパスが通っていることを確認。
$ startxfce4
を実行すると、xscreenserverがないとメッセージが出たので、
setup.exeよりxscreenserverを選択しインストール。
再度startxfce4を実行すると、X画面が表示されるものの下記のようなログが出て
Xfce4が起動できていない。
ちなみに利用OSはWindowsXPでユーザ名は「root」としています。
【希望】 Xfce4デスクトップ環境を利用したい
【やったこと】
http://www.compuspec.net/reference/os/cygwin/installation.shtml
上記のサイトを参考にしました。
setup.exeより、リポジトリ「ftp://sunsite.dk/projects/cygwinports/」を追加し、
Xfce4関連のパッケージ全てをインストール。.bashrcに
PATH=/opt/xfce4/bin:$PATH
export PATH
を追記し、bash上からパスが通っていることを確認。
$ startxfce4
を実行すると、xscreenserverがないとメッセージが出たので、
setup.exeよりxscreenserverを選択しインストール。
再度startxfce4を実行すると、X画面が表示されるものの下記のようなログが出て
Xfce4が起動できていない。
ちなみに利用OSはWindowsXPでユーザ名は「root」としています。
startxfce4のログ
/usr/bin/startxfce4: Starting X server
(中略)
_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root
winValidateArgs - g_iNumScreens: 1 iMaxConsecutiveScreen: 1
(II) XF86Config is not supported
(II) Seehttp://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information
winDetectSupportedEngines - Windows NT/2000/XP
winDetectSupportedEngines - DirectDraw installed
winDetectSupportedEngines - DirectDraw4 installed
winDetectSupportedEngines - Returning, supported engines 00000007
winSetEngine - Using Shadow DirectDraw NonLocking
winAdjustVideoModeShadowDDNL - Using Windows display depth of 32 bits per pixel
winFinishScreenInitFB - Masks: 00ff0000 0000ff00 000000ff
(中略)
Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/, removing from list!
winPointerWarpCursor - Discarding first warp: 836 512
winProcEstablishConnection - Hello
winProcEstablishConnection - Clipboard is not enabled, returning.
Agent pid 2492
xscreensaver: 09:01:36: locking is disabled (running as root).
xscreensaver: 09:01:36: locking only works when xscreensaver is launched
by a normal, non-privileged user (e.g., not "root".)
See the manual for details.
FreeFontPath: FPE "/usr/X11R6/lib/X11/fonts/misc/" refcount is 2, should be 1; fixing.
# ここで下記URLのような何もない画面とXのカーソル(×印)が表示されて停止
#
/usr/bin/startxfce4: Starting X server
(中略)
_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root
winValidateArgs - g_iNumScreens: 1 iMaxConsecutiveScreen: 1
(II) XF86Config is not supported
(II) Seehttp://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information
winDetectSupportedEngines - Windows NT/2000/XP
winDetectSupportedEngines - DirectDraw installed
winDetectSupportedEngines - DirectDraw4 installed
winDetectSupportedEngines - Returning, supported engines 00000007
winSetEngine - Using Shadow DirectDraw NonLocking
winAdjustVideoModeShadowDDNL - Using Windows display depth of 32 bits per pixel
winFinishScreenInitFB - Masks: 00ff0000 0000ff00 000000ff
(中略)
Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/, removing from list!
winPointerWarpCursor - Discarding first warp: 836 512
winProcEstablishConnection - Hello
winProcEstablishConnection - Clipboard is not enabled, returning.
Agent pid 2492
xscreensaver: 09:01:36: locking is disabled (running as root).
xscreensaver: 09:01:36: locking only works when xscreensaver is launched
by a normal, non-privileged user (e.g., not "root".)
See the manual for details.
FreeFontPath: FPE "/usr/X11R6/lib/X11/fonts/misc/" refcount is 2, should be 1; fixing.
# ここで下記URLのような何もない画面とXのカーソル(×印)が表示されて停止
#
http://www.geekpage.jp/programming/c/helloworld.php
ここを見て最初からやっていったのですが、コンパイルは出来たものの
>CygwinだけではなくWindowsコマンドプロンプトで実行したい場合
のところにある「-mno-cygwin」を使おうとすると
gcc: installation problem, cannot exec `cc1': No such file or directory
と出てきてしまいます
どうしたらいいでしょうか?
ここを見て最初からやっていったのですが、コンパイルは出来たものの
>CygwinだけではなくWindowsコマンドプロンプトで実行したい場合
のところにある「-mno-cygwin」を使おうとすると
gcc: installation problem, cannot exec `cc1': No such file or directory
と出てきてしまいます
どうしたらいいでしょうか?
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc スレッド一覧へ
みんなの評価 : ★類似してるかもしれないスレッド
- Cygwin + MinGW + GCC 相談室 Part 8 (938) - [97%] - 2022/10/28 8:00
- Cygwin + MinGW + GCC 相談室 Part 7 (996) - [97%] - 2014/9/21 2:15
- Cygwin + MinGW + GCC 相談室 Part 6 (981) - [97%] - 2012/12/30 23:15
- Cygwin + MinGW + GCC 相談室 Part 5 (981) - [97%] - 2011/4/6 2:32
- Cygwin + MinGW + GCC 相談室 Part 4 (1001) - [97%] - 2010/3/23 18:31 ☆
- 【激遅】AppleGCC【絶望】 (111) - [1%] - 2010/1/15 10:31
トップメニューへ / →のくす牧場書庫について