Skip to content
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

Own header file not found at build time #201

Closed
tillea opened this issue Mar 19, 2022 · 2 comments
Closed

Own header file not found at build time #201

tillea opened this issue Mar 19, 2022 · 2 comments
Labels
no-repro Bug reports that don't provide a repro or where maintainers are unable to repro based on issue.

Comments

@tillea
Copy link

tillea commented Mar 19, 2022

Describe the bug
When trying to build ismrmd version 1.7.1 I get

fatal error: ismrmrd/ismrmrd.h: No such file or directory

To Reproduce
I'm trying to upgrade the Debian package of the latest version. You can find a full build log in the Debian CI. The actual build issue is

    [ 28%] Building C object CMakeFiles/ismrmrd_static.dir/libsrc/ismrmrd.c.o
    /usr/bin/cc   -g -O2 -ffile-prefix-map=/build/ismrmrd-1.7.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -pedantic -Wdate-time -D_FORTIFY_SOURCE=2 -std=c99 -Wall - Werror -MD -MT CMakeFiles/ismrmrd_static.dir/libsrc/ismrmrd.c.o -MF CMakeFiles/ismrmrd_static.dir/libsrc/ismrmrd.c.o.d -o CMakeFiles/ismrmrd_static.dir/libsrc/ismrmrd.c.o -c /build/ismrmrd-1.7.1/libsrc/ismrmrd.c
    /build/ismrmrd-1.7.1/libsrc/ismrmrd.c:17:10: fatal error: ismrmrd/ismrmrd.h: No such file or directory
       17 | #include "ismrmrd/ismrmrd.h"
          |          ^~~~~~~~~~~~~~~~~~~
    compilation terminated.

Expected behavior
Just a clean build.

Logs/Screenshots
See a the full build log with all depenencies in Debian CI.

System Information:

  • Debian unstable
  • Tag v1.7.1

Kind regards, Andreas.

@hansenms
Copy link
Member

@tillea can you please provide steps to reproduce. I can see that you are providing a link to a build log, but it's not really possible for us to reproduce from that. A quick skim of the build log shows some stuff about an image labeled "unstable", etc. so it is a bit unclear what version you are trying to build on and on what circumstances. For folks having problems building on a certain system, we recommend creating a Dockerfile that shows how the build fails on that system so we can reproduce and take a look from there.

There has been some changes to how we do some CMake stuff lately, but we are building on Ubuntu systems in our pipeline which is Debian based, so I think it should work in general. For example, I just created the following Dockerfile to build on latest released version of Debian:

FROM debian:bullseye

RUN apt-get update && \
    apt-get install -y \
    gcc \
    g++ \
    git-core \
    cmake \
    ninja-build \
    doxygen \
    git-core \
    graphviz \
    libboost-all-dev \
    libfftw3-dev \
    libhdf5-serial-dev

RUN git clone https://github.com/ismrmrd/ismrmrd && \
    cd ismrmrd && \
    mkdir build && \
    cd build && \
    cmake -GNinja ../ && \
    ninja && \
    ninja install

And then done a build with: docker build -t ismrmrd-deb-build . from the folder where that Dockerfile is located and it builds without any issues.

I would suggest starting with something like that and recreating the problem you are seeing in that. I have no doubt that there are a bunch of other flags, etc that get set to build debian packages and there is some legacy cpack stuff in the repo still which has not been well maintained, so there is no doubt some issue here, but I am not sure we can dig into based on the information provided here.

@hansenms hansenms added the no-repro Bug reports that don't provide a repro or where maintainers are unable to repro based on issue. label Mar 20, 2022
@tillea
Copy link
Author

tillea commented Mar 21, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-repro Bug reports that don't provide a repro or where maintainers are unable to repro based on issue.
Projects
None yet
Development

No branches or pull requests

2 participants