-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Travis CI currently fails #3
Comments
the i see two solutions to this:
"2" is better solution as it would make the test suite usable outside travis too (developers machines), "1" is probably just easier to implement ( |
On Friday, 08 September 2017 12:26:30 CEST Elan Ruusamäe wrote:
the `make install` was made there with the purpose of replacing system
version from installed one. an easy solution quickly made.
i see two solutions to this:
1. cleanup system leftovers of `file` package install
2. be independent of `file` package present in the os
"2" is better solution as it would make the test suite usable outside travis
too (developers machines), "1" is probably just easier to implement
(`apt-get purge file` perhaps).
probably dependencies of other packages will get in the way of 1).
Let's do the second solution, either using -rpath
or by setting the LD_LIBRARY_PATH to the build directory.
The cmdline help of fast-regression-test.py even shows
how to use an alternative location for the magic *database*.
|
ok, i made the 1" solution so far, seems working: can't test osx part because travis macos infrastructure is down: this doesn't mean the "2" can't be made as well :) |
this has been fixed a long time ago. |
not really, #4 never finished |
Testing with Travis CI currently fails.
tl;dr: It picks up the wrong libmagic.so:
file: compiled magic version [532] does not match with shared library magic version [514]
.travis.yml basically does a "make" and "make install".
After that it calls "file --version" and from the log you can see it's the current file version.
It does not set any LD_LIBRARY_PATH. What happens now is that it will pick up the "libmagic.so" from Travis CI's system instead of the just built one.
We could either tweak around the LD_LIBRARY_PATH or set -rpath during compile time.
Something like "LDFLAGS=-Wl,-rpath $BUILD_DIR". That's how I do it for my local file-tests invocation.
Example log output showing the problem:
https://travis-ci.org/file/file-tests/jobs/272927961
$ file --version
file-5.32
magic file from /etc/magic:/usr/share/misc/magic
The command "file --version" exited with 0.
python update-db.py -m file/magic/Magdir
using file from /usr/bin/file
version is file-5.32
magic file from /etc/magic:/usr/share/misc/magic
[ ################################################ ] 100% Splitting patterns
file: compiled magic version [532] does not match with shared library magic version [514]
file: Unknown !: entry `!:ext cwk'
.. [CRASH] ..
The text was updated successfully, but these errors were encountered: