How to compile libjitsi for Openbsd?


#1

Hello,

I’m restarting a thread on the specific libjitsi topic on how to compile it for Openbsd.

When I try to compile it I see this

ant sctp -Dusrsctp=/usr/local/usrsctp/
Buildfile: /usr/local/libjitsi/build.xml
[maven-artifact:dependencies] [WARNING] POM for ‘org.osgi:org.osgi.core:pom:4.3.1:compile’ is invalid.
[maven-artifact:dependencies]
[maven-artifact:dependencies] Its dependencies (if any) will NOT be available to the current build.
[maven-artifact:dependencies] [WARNING] POM for ‘org.osgi:org.osgi.core:pom:4.3.1:compile’ is invalid.
[maven-artifact:dependencies]
[maven-artifact:dependencies] Its dependencies (if any) will NOT be available to the current build.

init-native:
-sctp-macosx:
-sctp-win:
-sctp-linux:
-sctp-openbsd:
[cc] Starting dependency analysis for 1 files.
[cc] 1 files are up to date.
[cc] 0 files to be recompiled from dependency analysis.
[cc] 0 total files to be compiled.
BUILD FAILED
/usr/local/libjitsi/src/native/build.xml:1356: Output directory is not a directory
Total time: 2 seconds

On line 1356 (objdir) I see

     <cc outtype="shared" name="gcc"
        outfile="${native_install_dir}/jnsctp"
        objdir="${obj}">

#2

I added this to build.xml

  <condition property="native_install_dir" value="${native.libs}/openbsd-x86-64">
    <and>
      <isset property="is.running.openbsd"/>
      <equals arg1="${arch}" arg2="64" />
    </and>
  </condition>

And managed to compile

-sctp-openbsd:
       [cc] Starting dependency analysis for 1 files.
       [cc] 1 files are up to date.
       [cc] 0 files to be recompiled from dependency analysis.
       [cc] 0 total files to be compiled.

But I don’t understand why ionly have one file

ls /usr/local/libjitsi/lib/native/openbsd-x86-64
history.xml  libjnsctp.so

Many .so are missing


#3

Hi, I would first try to compile usrsctp without any of the Java shenanigans and then try to integrate the build process into the Java build pipeline. Are you able to do that already?


#4

Hello,
Thank you for your answer.
Yes I did compile it already.

Last line of the make

mv -f .deps/http_client_upcall.Tpo .deps/http_client_upcall.Po
/bin/sh ../libtool  --tag=CC    --mode=link gcc  -g -O2 -std=c99 -pthread -pedantic -Wall -Werror -g -O0    -o http_client_upcall http_client_upcall.o ../usrsctplib/libusrsctp.la
libtool: link: gcc -g -O2 -std=c99 -pthread -pedantic -Wall -Werror -g -O0 -o .libs/http_client_upcall http_client_upcall.o  -L../usrsctplib/.libs -lusrsctp -pthread -Wl,-rpath,/usr/local/lib
../usrsctplib/.libs/libusrsctp.so.1.0: warning: random() may return deterministic values, is that what you want?
../usrsctplib/.libs/libusrsctp.so.1.0: warning: strcpy() is almost always misused, please use strlcpy()

#5

Do someone else have an idea why so many so are missing ?