LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Compiling from source, cannot find edje, no .pc file? (https://www.linuxquestions.org/questions/linux-software-2/compiling-from-source-cannot-find-edje-no-pc-file-767442/)

lugoteehalt 11-06-2009 09:02 PM

Compiling from source, cannot find edje, no .pc file?
 
Trying to get the Enlightenment 17 window manager, so used the script they give:
Code:

#!/bin/sh

set -e

PREFIX="/usr/local"

SVN="http://svn.enlightenment.org/svn/e/trunk"
OPT="--prefix=$PREFIX"

svn co $SVN

PROJECTS="eina eet evas ecore embryo edje e_dbus efreet eina e"

export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH"
export PATH="$PREFIX/bin:$PATH"
export LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"

for PROJ in $PROJECTS; do
  pushd trunk/$PROJ
    make clean distclean || true
    ./autogen.sh $OPT && make && sudo make install
  popd
  sudo ldconfig
done

All went well until it could not find one of the components "edje", it found the others, "evas" and so on.

It say,
Code:

checking for E_THUMB... configure: error: Package requirements (
  evas
  ecore
  ecore-evas
  edje
  ecore-file
  ecore-ipc
  eet >= 1.0.1
  efreet
) were not met:

No package 'edje' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables E_THUMB_CFLAGS
and E_THUMB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

I look in edje, which has been downloaded just like the others and to the same place but it has no *.pc file in it. pkg-config requires this file doesn't it?

How do you make it find edje? What might be put in E_THUMB_CFLAGS and E_THUMB_LIBS? Personally, I've had this sort of problem about a hundred billion billion trillion the earth the solar system the galaxy the universe times before.:)

John VV 11-06-2009 11:07 PM

a common problem when using prebuilt binary's , just make a edje.pc file .
or BUILD the program and copy the .pc file to /usr/lib/pkgconfig

lugoteehalt 11-07-2009 12:22 AM

Quote:

Originally Posted by John VV (Post 3747844)
a common problem when using prebuilt binary's , just make a edje.pc file .
or BUILD the program and copy the .pc file to /usr/lib/pkgconfig

Thanks. Couldn't work out how to write edje.pc, so noticed there was a file "edje.pc.in" in the edje directory: so knocked off the 'in' and put it into the pkgconfig directory as you suggested.

It nearly worked but got:
Code:

In file included from e_main.c:5:
e.h:80:18: error: Edje.h: No such file or directory
e_main.c: In function â mainâ :
e_main.c:399: warning: implicit declaration of function â edje_initâ
e_main.c:400: warning: implicit declaration of function â edje_freezeâ
e_main.c:401: error: â edje_shutdownâ  undeclared (first use in this function)
e_main.c:401: error: (Each undeclared identifier is reported only once
e_main.c:401: error: for each function it appears in.)
e_main.c:621: warning: implicit declaration of function â edje_frametime_setâ
e_main.c: In function â _e_main_cb_idler_beforeâ :
e_main.c:1536: warning: implicit declaration of function â edje_thawâ
make[3]: *** [e_main.o] Error 1
make[3]: Leaving directory `/home/lugo/Computing/Shell/trunk/e/src/bin'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/lugo/Computing/Shell/trunk/e/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/lugo/Computing/Shell/trunk/e'
make: *** [all] Error 2

So it's complaining about the non-existence of Edje.h. In fact it does exist in edje's /src/lib directory.

So is there something wrong with the edje.pc file I made perhaps?
Code:

prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
datarootdir=@datarootdir@
datadir=@datadir@/edje

Name: edje
Description: Enlightened graphical design and layout engine.
@pkgconfig_requires_private@: @requirement_edje@
Version: @VERSION@
Libs: -L${libdir} -ledje
Libs.private:
Cflags: -I${includedir}


John VV 11-07-2009 12:50 AM

that .in file IS NOT a pc file . it is close but not correct .just build the program and the pc file will be made.

imagine_me2 11-07-2009 12:11 PM

try
$locate edje.pc

if you do not find it, consider installing the edje package again.

Then set the variable PKG_CONFIG_PATH to point to the edej.pc file

lugoteehalt 11-09-2009 07:37 AM

Thanks. My whole system got totaled. Assume it was the above but don't know for sure. Anyway needed to reinstall it for security reasons. God moves in mysterious ways, hope that is not blasphemous.


All times are GMT -5. The time now is 06:06 PM.