Jenkins: yum install can't find dependencies (libhpi, libjava, etc. all in $JAVA_HOME)

172 views
Skip to first unread message

Katie Soto

unread,
Sep 4, 2013, 2:41:28 PM9/4/13
to jenkins...@googlegroups.com
I'm having a seemingly simple problem that I just can't figure out.

I have a Java project that I needs these libraries:
libhpi
libjava
libverify
libjvm

These are all located in:
$JAVA_HOME/jre/lib
$JAVA_HOME/jre/lib/amd64
$JAVA_HOME/jre/lib/amd64/native_threads
$JAVA_HOME/jre/lib/amd64/server

$JAVA_HOME is set correctly on the *jenkins machine* AND on the *target machine*.
$LD_LIBRARY_PATH is also set correctly on the *jenkins machine* AND on the *target machine*.

When I try to install it on the target machine, I get this output:
[root@target ~]# yum install myProject
Loaded plugins: langpacks, presto, refresh-packagekit
myOtherProject                                                                                                                                                              | 2.8 kB  00:00:00    
Resolving Dependencies
--> Running transaction check
---> Package myProject.x86_64 0:13.08.21-1 will be installed
--> Processing Dependency: libhpi.so()(64bit) for package: myProject-13.08.21-1.x86_64
--> Finished Dependency Resolution
Error: Package: myProject-13.08.21-1.x86_64 (myOtherProject)
           Requires: libhpi.so()(64bit)
 You could try using --skip-broken to work around the problem

[root@target ~]# yum install myProject --skip-broken
Loaded plugins: langpacks, presto, refresh-packagekit
myOtherProject                                                                                                                                                              | 2.8 kB  00:00:00    
Resolving Dependencies
--> Running transaction check
---> Package myProject.x86_64 0:13.08.21-1 will be installed
--> Processing Dependency: libhpi.so()(64bit) for package: myProject-13.08.21-1.x86_64
myOtherProject/filelists_db                                                                                                                                                 | 147 kB  00:00:00    

Packages skipped because of dependency problems:
    myProject-13.08.21-1.x86_64 from myOtherProject

It can't find the libraries!

My Jenkins configuration is so:

1) Maven clean
2) Maven compile
3) Shell:
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib:$JAVA_HOME/jre/lib/amd64/server:$JAVA_HOME/jre/lib/amd64/native_threads:$JAVA_HOME/jre/lib/amd64:$LD_LIBRARY_PATH

/usr/bin/eclipse \
  --launcher.suppressErrors \
  -nosplash \
  -application org.eclipse.cdt.managedbuilder.core.headlessbuild \
  -import ./ \
  -cleanBuild myProject/Debug \
  -data ../tmp-pc

rm -rf ../tmp-pc

/home/jenkins/bin/mkso myProject

Builds just fine but I can't yum install it! Any ideas?

Larry Brigman

unread,
Sep 4, 2013, 3:38:55 PM9/4/13
to jenkins...@googlegroups.com
If it builds on this box then the library is there but not being declared by the installing package.  You will need to adjust your rpm dependency list.

find the library then use
rpm -qf libhpi.so
to find the package.
Then list the provides list of that package.
Adjust the spec file dependency list as needed.

Normally enabling auto_depends in the spec file handles this for you (AutoReqProv: yes).




--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Katie Soto

unread,
Sep 4, 2013, 5:10:17 PM9/4/13
to jenkins...@googlegroups.com
Awesome! Thanks, I'll give it a try!
Reply all
Reply to author
Forward
0 new messages