[GUIDE] Ubuntu repository - maintained by djcj
running build-plugins.sh, building
  • fms2000 failed
  • mvtoolssf failed, and can be removed since it's Windows only
so it would be cool if you could look into fms2000
Reply
Good news: I managed to get vspipe working (the vspipe location changed from vapoursynth/bin/vspipe to vapoursynth/vspipe which caused a few problems).

Still working on vsViewer to get it working.

Cu Selur
Reply
this is driving me nuts,..
1st I noticed that vsViewer/vsEdit by default tries to load 'vapoursynth-script', but there only is 'libvapoursynth-script' in the vapoursynth/lib-folder.
2nd after changing the code to look for libvapoursynth-script inside ~/opt/vapoursynth/lib and the file (/home/selur/opt/vapoursynth/lib/libvapoursynth-script.so) exists, but loading the library still fails,.. :/
will look more into it after some sleep Smile

Problem seems to be
/home/selur/opt/vapoursynth/lib/libvapoursynth-script.so is a symlink to libvapoursynth-script.so.0, but libvapoursynth-script.so.0 doesn't exist!
-> seems to be a problem with the compilation/deployment of Vapoursynth
Reply
modifying the .deploy-vapoursynth.sh
by changing
mv -f bin/*.so lib/vapoursynth/
into
mv -f bin/*.so* lib/vapoursynth/
does fix the symlink from
/home/selur/opt/vapoursynth/lib/libvapoursynth-script.so to libvapoursynth-script.so.0
but loading
/home/selur/opt/vapoursynth/lib/libvapoursynth-script.so
still fails.
As aside note: needed to adjust the 'install-vs.sh' to use "g++ -std=c++11" instead of gcc and g++ in the compile vspipe on Ubuntu 16.04.
here's what I changed in the deploy-vapoursynth.sh
selur@ubuntu1604:~/workspace/scripts/Hybrid$ git diff deploy-vapoursynth.sh
diff --git a/Hybrid/deploy-vapoursynth.sh b/Hybrid/deploy-vapoursynth.sh
index d3d1618..b785e40 100755
--- a/Hybrid/deploy-vapoursynth.sh
+++ b/Hybrid/deploy-vapoursynth.sh
@@ -8,7 +8,7 @@ test -e "$vsprefix"
mkdir -p AppDir/usr/
cp -r "$vsprefix/include" "$vsprefix/lib" "$vsprefix/src" install-vs.sh AppDir/usr/

-for l in AppDir/usr/lib/vapoursynth/*.so ; do
+for l in AppDir/usr/lib/vapoursynth/*.so* ; do
   cmdLine="$cmdLine -e$l"
done

@@ -24,7 +24,7 @@ rm linuxdeploy-x86_64.AppImage
mv AppDir/usr/ vapoursynth
rmdir AppDir
cd vapoursynth
-mv -f bin/*.so lib/vapoursynth/
+mv -f bin/*.so* lib/vapoursynth/
rm -rf bin lib/python*/ lib/vapoursynth/*.la lib/*.la
mv lib/vapoursynth/ vsplugins
cd ..
and here what I changed in the install-vs.sh:
selur@ubuntu1604:~/workspace/scripts/Hybrid$ git diff install-vs.sh
diff --git a/Hybrid/install-vs.sh b/Hybrid/install-vs.sh
index bc1eec5..3dcdcd1 100755
--- a/Hybrid/install-vs.sh
+++ b/Hybrid/install-vs.sh
@@ -33,20 +33,20 @@ cp -r include lib vsplugins "$vsprefix" &
counter $! "Copy files"

# cython
-gcc -shared -fPIC -O3 -Isrc  $(pkg-config --cflags python3) \
+g++ -std=c++11 -shared -fPIC -O3 -Isrc  $(pkg-config --cflags python3) \
   src/src/cython/vapoursynth.c  -o "$sitepackages/vapoursynth.so" \
   -Llib -lvapoursynth  -s -Wl,-rpath,"$vsprefix/lib" &
counter $! "Build Python module"

# vsscript
-g++ -shared -fPIC -O3 -Isrc/include  $(pkg-config --cflags python3) \
+g++ -std=c++11 -shared -fPIC -O3 -Isrc/include  $(pkg-config --cflags python3) \
   src/src/vsscript/vsscript.cpp  -o "$vsprefix/lib/libvapoursynth-script.so.0" \
   $(pkg-config --libs python3)  -s -Wl,-rpath,"$vsprefix/lib"  -Wl,-soname,libvapoursynth-script.so.0 &
counter $! "Build VSScript library"
ln -sf libvapoursynth-script.so.0 "$vsprefix/lib/libvapoursynth-script.so"

# vspipe
-g++ -O3 -Isrc/include  src/src/vspipe/vspipe.cpp  -o "$vsprefix/vspipe" \
+g++ -std=c++11 -O3 -Isrc/include  src/src/vspipe/vspipe.cpp  -o "$vsprefix/vspipe" \
   -L"$vsprefix/lib" -lvapoursynth-script  -s -Wl,-rpath,"$vsprefix/lib" &
counter $! "Build VSPipe"
I also modified the build-tools.sh
selur@ubuntu1604:~/workspace/scripts/Hybrid$ git diff build-tools.sh
diff --git a/Hybrid/build-tools.sh b/Hybrid/build-tools.sh
index 728dd69..72785bf 100755
--- a/Hybrid/build-tools.sh
+++ b/Hybrid/build-tools.sh
@@ -243,7 +243,8 @@ fi
### vsViewer
if echo "$args" | grep -q -i -w -E 'all|vsviewer'
then
-  git clone https://github.com/Selur/vsViewer build
+  git clone --single-branch --branch debug2 https://github.com/Selur/vsViewer build
+#  git clone https://github.com/Selur/vsViewer build
   cd build
   git clone https://github.com/vapoursynth/vapoursynth vapoursynth-git
   cd vapoursynth-git
@@ -262,21 +263,14 @@ scriptDir="\$(dirname "\$(readlink -f "\$0")")"

env="\$HOME/opt/vapoursynth/env.sh"
if [ -f "\$env" ]; then
-  echo "sourcing \$env"
   . "\$env"
else
-  echo "'\$env' does not exist!"
-fi
-
-env="/opt/vapoursynth/env.sh"
-if [ -f "\$env" ]; then
-  echo "sourcing \$env"
-  . "\$env"
-else
-  echo "'\$env' does not exist!"
+  env="/opt/vapoursynth/env.sh"
+  if [ -f "\$env" ]; then
+    . "\$env"
+  fi
fi
-
-"\$scriptDir/vsViewer" \$*
+$*
EOF
   chmod a+x vsfilters_env.sh
fi
to modify the vsfilters_env.sh and use debug2-branch of vsViewer to get some debug info,...
sadly all this didn't really help with the loading.
update: small correction the initialization of the libraries did work, bug now it fails at 'vssInit' which is the function pointer to Vapoursynths 'vsscript_init'.


Cu Selur
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)