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
2.11.0 doesn't find ncbi-vdb: configure: error: required ncbi-vdb package not found #489
Comments
How did you configure ncbi-vdb and what did it print? |
configuration command is:
It prints:
|
Try to add |
No, this didn't help.
What exactly does the build need? I have
Is anything missing (was forgotten to be installed) in the above file list that |
Yes, Do you have |
Both files are present. |
Please add |
|
Copy |
Now it passed the configure stage, and breaks at the build stage:
|
What command did you run to build |
configure:
make:
|
I cannot build ncbi-vdb with your PR. |
Any more progress on this? |
Looks like the mbedtls code is not being built in ncbi_vdb, even though configure is finding the library:
===> ncbi-vdb-2.11.0_1 depends on shared library: libmbedtls.so - found (/usr/local/lib/libmbedtls.so) |
Looks like all the vdb_mbedtls_ functions are defined in the bundled libs/ext/mbedtls in ncbi-vdb. build/mbedtls-lib-name-replace.sed was used at some point (not during build) to add the vdb_ prefix to all the symbols. So I'm guessing that the bundled mbedtls is heavily modified and cannot be easily replaced with a separate mbedtls. Andrew? If that's the case, we'll have to revert the patches that unbundle mbedtls. |
Use the included mbedtls. It has been modified to allow for static inclusion in libvdb without conflicting with other mbedtls linkage (if we included it verbatim, then anyone linking against it in addition to libvdb would get symbol conflicts). I did not read the trail above with great detail, but why would you unbundle mbedtls? Please just build libvdb the way it was designed. Thanks! |
Standard reasons: To get regular security updates and other improvements. Bundled libraries invariably fall behind upstream. Thanks for verifying. I've already had a successful build with the bundled mbedtls and will post more info once I've cleaned up and tested more thoroughly. |
I just committed to the FreeBSD ports tree. The one big issue remaining is how the build interacts with ncbi-vdb. Andrew mentioned that sra-tools requires access to the ncbi-vdb source tree. I got around this by treating ncbi-vdb like a Github submodule, building it as part of the sra-tools port instead of building and installing as a separate port. |
A little more about this: In addition to being a good practice for security and reliability, unbundling is actually policy for many mainstream package managers, e.g. https://fedoraproject.org/wiki/Bundled_Libraries?rd=Packaging:Bundled_Libraries |
We switched to cmake build since you created this issue. |
Thanks, does this mean the build should work with separately installed ngs and ncbi-vdb now? |
It means that you probable will have to retry your steps.
|
My question is, does sra-tools still require access to the ncbi-vdb source tree during build? Or can we build and install ncbi-vdb and point the sra-tools build to the installation prefix? |
Also, you stated earlier that you switched to cmake, but your recommended build sequence above uses the old configure scripts. Do you recommend one method over the other? I built ncbi-vdb successfully using standard cmake commands. |
sra-tools should not require ncbi-vdb source tree. You can configure/make or build using cmake commands. |
OK, I should be able to take it from here. This can probably be closed now. I don't have the authority since Yuri opened it. |
I call configure with these arguments:
It breaks after saying that it found it:
The text was updated successfully, but these errors were encountered: