Skip to content

Build error with fpm (gfortran) #618

Open
@omaclaren

Description

@omaclaren

Description

Hi!

I don't really know what I'm doing, but following the stdlib fpm build instructions I get to here:

fpm build --profile release

at which point I get the error message:

  • gfortran -c ./src/stdlib_hash_64bit.f90 -O3 -funroll-loops -Wimplicit-interface -fPIC -fmax-errors=1 -fcoarray=single -J build/gfortran_EDF3F128DBFCA123 -Ibuild/gfortran_EDF3F128DBFCA123 -o build/gfortran_EDF3F128DBFCA123/stdlib/src_stdlib_hash_64bit.f90.o
    ./src/stdlib_hash_64bit.f90:66:29:

    66 | pow64_over_phi = int(z'9E3779B97F4A7C15', int64)
    | 1
    Error: Arithmetic overflow converting INTEGER(16) to INTEGER(8) at (1). This check can be disabled with the option '-fno-range-check'
    compilation terminated due to -fmax-errors=1.
    Compilation failed for object " src_stdlib_hash_64bit.f90.o "
    stopping due to failed compilation
    STOP 1

It's probably something that someone more up on things than me would be able to fix (see see comment below), but figured might be worth reporting anyway. I tried updating gfortran (not sure if this impacts fpm) from conda-forge but still no joy.

I also get the same error when trying to include stdlib in an fpm project toml file.

Expected Behaviour

I expected the build to work :-)

Version of stdlib

v0.1.0

Platform and Architecture

Ubuntu 20.04.3 (x86_64)

Additional Information

fpm info:

Version: 0.5.0, alpha
Program: fpm(1)
Description: A Fortran package manager and build system
Home Page: https://github.com/fortran-lang/fpm
License: MIT
OS Type: Linux

running:

gfortran --version
gives
GNU Fortran (GCC) 9.4.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingbuild: fpmIssue with stdlib's automatic exported fpm buildcompiler: gfortranSpecific to GCC Fortran compiler

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions