Skip to content
This repository was archived by the owner on Dec 29, 2022. It is now read-only.
This repository was archived by the owner on Dec 29, 2022. It is now read-only.

Can not build as shared library #14

@uilianries

Description

@uilianries

Hi!

I see no restriction described about building this project as shared library, however, I see a linkage error and building:

$ cd build && cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Release" -DCMAKE_CXX_FLAGS="-m64" -DCMAKE_SHARED_LINKER_FLAGS="-m64" -DCMAKE_C_FLAGS="-m64" -DBUILD_SHARED_LIBS="ON" -DCMAKE_POSITION_INDEPENDENT_CODE="ON" -DOPTION_ASTC_TESTS="OFF"

-- The C compiler identification is GNU 10.1.0
-- The CXX compiler identification is GNU 10.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Conan: called by CMake conan helper
-- Conan: called inside local cache
-- Conan: Adjusting output directories
-- Conan: Using cmake global configuration
-- Conan: Adjusting default RPATHs Conan policies
-- Conan: Adjusting language standard
-- Conan: Adjusting fPIC flag (ON)
-- Conan: Compiler GCC>=5, checking major version 10
-- Conan: Checking correct version: 10
-- Conan: C++ stdlib: libstdc++11
-- Configuring done
-- Generating done

-- Build files have been written to: /home/uilian/data/astc-codec/build


$ cmake --build .

Scanning dependencies of target footprint
[  6%] Building CXX object src/decoder/CMakeFiles/footprint.dir/footprint.cc.o
[ 12%] Linking CXX shared library libfootprint.so
[ 12%] Built target footprint
Scanning dependencies of target astc_utils
[ 18%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/astc_file.cc.o
[ 25%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/endpoint_codec.cc.o
[ 31%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/integer_sequence_codec.cc.o
[ 37%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/intermediate_astc_block.cc.o
[ 43%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/logical_astc_block.cc.o
[ 50%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/partition.cc.o
[ 56%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/physical_astc_block.cc.o
[ 62%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/quantization.cc.o
[ 68%] Building CXX object src/decoder/CMakeFiles/astc_utils.dir/weight_infill.cc.o
[ 75%] Linking CXX shared library libastc_utils.so
[ 75%] Built target astc_utils
Scanning dependencies of target astc_inspector_cli
[ 81%] Building CXX object src/decoder/CMakeFiles/astc_inspector_cli.dir/tools/astc_inspector_cli.cc.o
[ 87%] Linking CXX executable astc_inspector_cli
/usr/bin/ld: CMakeFiles/astc_inspector_cli.dir/tools/astc_inspector_cli.cc.o: undefined reference to symbol '_ZN10astc_codec9Footprint5ParseEPKc'
/usr/bin/ld: /home/uilian/data/astc-codec/build/build/src/decoder/libfootprint.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [src/decoder/CMakeFiles/astc_inspector_cli.dir/build.make:104: src/decoder/astc_inspector_cli] Error 1
make[1]: *** [CMakeFiles/Makefile2:140: src/decoder/CMakeFiles/astc_inspector_cli.dir/all] Error 2
make: *** [Makefile:103: all] Error 2

The error seems be related to astc_inspector_cli and some missing symbol.

Environment:

arch=x86_64
build type=Release
compiler=gcc 10
libcxx=libstdc++11
os=Linux

I'm using the commit 9757bef: https://github.com/google/astc-codec/archive/9757befb64db6662aad45de09ca87cd6f599ac02.tar.gz

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions