LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Linking Problem I think? (https://www.linuxquestions.org/questions/linux-software-2/linking-problem-i-think-217278/)

gplacek 08-13-2004 04:15 PM

Linking Problem I think?
 
I am trying to compile Eterm for the transparencey option, and thats the only thing I cant get to work. I have downloaded imlib2 and compiled it with no errors. (imlib2-1.1.1.tar.gz) Is there a difference in Imlib2 and imlib2, is it just a matter of the "i" being capitalized, is it that I need to rename "imlib2" or the dir? Should I just be linking the lib file to another file? If so should I be linking /usr/local/bin/imlib2 to something? Strange cause thats a /bin file. I'm a little confused. I know I can do whatever has to be done, I just need a hint or a push in the right direction..
Here is some output from the compile and a couple of whereis's. I will post more output if needed. Any help would be great.

thanks
gplacek

configure: warning: *** Pixmap support has been disabled because Imlib2 was not found ***
configure: warning: *** or could not be linked. Eterm should still work
configure: warning: *** not be very happy. Check config.log for more detailed ***
configure: warning: *** information on why my attempt to link with Imlib2 failed. ***

$ whereis imlib2
imlib2: /usr/local/bin/imlib2

$ whereis Imlib2
Imlib2:

gplacek 08-13-2004 05:08 PM

can I get a hint please
 
Does anyone think that this is a linking problem or that imlib2 is named wrong. I just need a little hint here, can someone tell me what they think? :-)

gplacek

Tinkster 08-13-2004 05:09 PM

The easiest thing to do, really, would be to
edit ./configure and see whether the capitalisation
only happens in the output for that error-message
or whether it actually is (stupidly) looking for a
libImlib2 ...


Cheers,
Tink

gplacek 08-13-2004 05:27 PM

ok..
 
All the references to Imlib2 , the "I" is capital. Here is a clip from my configure file. Did I install Imlib2 in the wrong place or it cant find it because it is spelled "imlib2"? Can I fix this by linking it, and if so, how should I make the link. I knw to use "ln" but I've never made a link before. Do I need to go to the /usr/local/lib/ and link using a different name to my install dir in /home/greg/Eterm/ or what? Thanks for the help.

gplacek

ps. It looks like it says -LImlib2 with a lowercase "L" before the "i"

echo $ac_n "checking for imlib_create_image in -lImlib2""... $ac_c" 1>&6
echo "configure:8913: checking for imlib_create_image in -lImlib2" >&5
ac_lib_var=`echo Imlib2'_'imlib_create_image | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else

Tinkster 08-13-2004 05:37 PM

Try a
locate -i libimlib2
to find out whether it's actually capitalised or
not ... if it's not it's pretty safe to assume that
the ./confugire script is stuffed, and you could
try editing that ...


Cheers,
Tink

gplacek 08-13-2004 05:48 PM

Looks like all the instances are capital "I". But what does this tell me? Does the -i stand for case insensitive? But in my /home dir the dir name is lowercase, does this matter, I dont think so. I should be looking at the ones in the /local/lib/ dir, right? what should I do about this? Should I be linking them? Why is the configure not finding them? Youve been lots of help Tinkster, :-) I feel I am getting close to the answer. Thanks

gplacek

$ locate -i libimlib2
/usr/local/lib/libImlib2.so.1.1.1
/usr/local/lib/libImlib2.so.1
/usr/local/lib/libImlib2.so
/usr/local/lib/libImlib2.la
/usr/local/lib/libImlib2.a
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.so.1.1.1
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.so.1
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.so
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.a
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.lai
/home/greg/eterm/imlib2/imlib2-1.1.1/src/.libs/libImlib2.la
/home/greg/eterm/imlib2/imlib2-1.1.1/src/libImlib2.la

Tinkster 08-13-2004 05:53 PM

In this case the next thing to check would be
whether FC actually adds /usr/local/lib to
the ld-path ...

Edit /etc/ld.so.conf
If /usr/local/lib isn't in there, add it and run
ldconfig ... then try your compile again.


Cheers,
Tink

gplacek 08-13-2004 06:08 PM

ok. /usr/local/lib wasnt there but I added
 
ok. /usr/local/lib wasnt there but I added it. I want to run "ldconfig". I read the man page (not very long) but I am a little foggy on what options I need to use..

Some existing libs do not contain enough information to allow the
deduction of their type, therefore the /etc/ld.so.conf file format
allows the specification of an expected type. This is only used for
those ELF libs which we can not work out. The format is like this
"dirname=TYPE", where type can be libc4, libc5 or libc6. (This syntax
also works on the command line). Spaces are not allowed. Also see the
-p option.

should I

ldconfig /usr/local/lib=TYPE? Which type? or am I using the wrong option?

Thanks lots

gplacek :-)

gplacek 08-13-2004 06:38 PM

ahhhhh
 
This is driving me crazy... I feel like I was so close... I know about what I am doing and the I keep getting bash: ldconfig: command not found.... ahhhh .. I am running as root and I for the life of me cant get ldconfig to do a thing. I've read the man page, and no matter what I do I cant get ldconfgi to do anything. what could I possibly be missing...

gplacek

gplacek 08-13-2004 06:42 PM

ok ok... I guess I wasnt working in the /sbin dir... blaaaaa

gplacek 08-13-2004 07:01 PM

Still no luck
 
This is really bugging me. and to think all I wanted was to use Eterm so I could have that nice transparent look for my term while I use window maker, I seem to be giving myself a crash course in linking failure.

any help would be great.
thanks
gplacek

I have edited and /sbin/ldconfig and then configured

$ locate -i libimlib2
/usr/local/lib/libImlib2.so.1.1.1
/usr/local/lib/libImlib2.so.1
/usr/local/lib/libImlib2.so
/usr/local/lib/libImlib2.la
/usr/local/lib/libImlib2.a

/etc/ld.so.conf

/usr/X11R6/lib
/usr/lib/sane
/usr/lib/qt-3.1/lib
/usr/local/lib ....... so I added this line

then

"Edit /etc/ld.so.conf
If /usr/local/lib isn't in there, add it and run
ldconfig ... then try your compile again."

/usr/local/lib:
libfreetype.so.6 -> libfreetype.so.6.3.7
libwraster.so.2 -> libwraster.so.2.2.0
libdha.so.1.0 -> libdha.so.1.0
libImlib2.so.1 -> libImlib2.so.1.1.1
libEterm-0.9.2.so -> libEterm.so
libast.so.1 -> libast.so.1.1.0

BUT, I still get the same error message during configure

configure: warning: *** Pixmap support has been disabled because Imlib2 was not found ***
configure: warning: *** or could not be linked. Eterm should still work
configure: warning: *** not be very happy. Check config.log for more detailed***
configure: warning: *** information on why my attempt to link with Imlib2 failed ***


All times are GMT -5. The time now is 08:27 AM.