Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

eggコマンドが使えません(EGGXを使用したプログラムのコンパイルができません)

解決したいこと

EGGXを使用したプログラムのコンパイルができません。
WSL2(Windows10Pro)のUbuntu20.04LTSを使用しています。
解決方法を教えて下さい。

発生している問題・エラー

コマンド 'egg' が見つかりません。もしかして:
command 'eog' from deb eog (3.36.3-0ubuntu1)
command 'geg' from deb geg (2.0.9-3)
command 'eg' from deb easygit (0.99-2)
次を試してみてください: sudo apt install <deb name>  

該当するソースコード

$ egg sample.c

インストールと環境構築は下の記事のようにやりました。
https://qiita.com/anne_daigaku/items/be3bd7fec857d337d873

examples_tutorialに入っているサンプルプログラムは動きました。

自分で試したこと

gccコマンドでコンパイルしてみました。(参考サイト

gcc -L/usr/X11R6/lib -O -o sample sample.c -leggx -lX11 -lm 

発生している問題・エラー

sample.c:1:10: fatal error: eggx.h: そのようなファイルやディレクトリはありません
1 | #include <eggx.h>
 |          ^~~~~~~~
compilation terminated.                                 
0

1Answer

examples_tutorial が動いたということは egg のビルドまではできているようですね。

参考にされた記事の

make install
root になり,make installする。

$ sudo su -  #公式サイトと違う部分
$ make install

は実行しましたか? 成功すれば /usr/local/bin/egg/usr/local/lib/libeggx.a/usr/local/include/eggx*.h が作られるはずです。これらが存在するか確認してください。

0Like

Comments

  1. @anne_daigaku

    Questioner

    3つのファイルが存在していませんでした。
    やりなおしてみたところ、下記のエラーが出ました。

    ```
    root@DESKTOP-HGVMRCT:~# make install
    make: *** No rule to make target 'install'. Stop.
    ```
  2. make install は eggx-0.95 ディレクトリの中で実行してください。
  3. ちなみに eggx*.h は eggx で始まって .h で終わる名前のファイルの意味で書きました。何個か作られると思います。
  4. @anne_daigaku

    Questioner

    「sudo make install」を「eggx-0.95 ディレクトリ」の中で実行したところ、上記のファイルが作られました。

    ```
    an@DESKTOP-HGVMRCT:~/demo$ cd eggx-0.95
    an@DESKTOP-HGVMRCT:~/demo/eggx-0.95$ sudo make install
    [sudo] an のパスワード:
    ar cruv libeggx.a eggx_base.o eggx_color.o
    ar: `u' modifier ignored since `D' is the default (see `U')
    r - eggx_base.o
    r - eggx_color.o
    ranlib libeggx.a
    if [ ! -d /usr/local/lib ];then sh install-sh -d /usr/local/lib; fi
    if [ ! -d /usr/local/include ];then sh install-sh -d /usr/local/include; fi
    if [ ! -d /usr/local/bin ];then sh install-sh -d /usr/local/bin; fi
    sh install-sh -m 644 libeggx.a /usr/local/lib
    sh install-sh -m 644 eggx*.h /usr/local/include
    sh install-sh -m 755 egg /usr/local/bin
    ranlib /usr/local/lib/libeggx.a
    ```
  5. それで egg sample.c が実行できる状態になったと思います。
  6. @anne_daigaku

    Questioner

    実行出来ました!ありがとうございます!!

Your answer might help someone💌