abseil / abseil/abseil-cpp

[Bug]: undefined reference to `absl::lts_20211102::

オープン
#1,428 コメント 3 件 リアクション 1 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
18.1k
フォーク
3.2k
平均マージ
20時間 36分
マージ済み PR(30日)
1

説明

### Describe the issue

Hi, I have built abseil from source, but when I compile other projects using absl, I got a lot `undefined reference to `absl::lts_20211102:: .....` errors.

```
git clone https://github.com/abseil/abseil-cpp.git --recursive
cd abseil-cpp
git checkout 20211102.0
git submodule update --init --recursive
mkdir build && cd build
cmake -DCMAKE_CXX_STANDARD=17 -DABSL_CXX_STANDARD=17 -DABSL_USE_GOOGLETEST_HEAD=ON -DCMAKE_MODULE_LINKER_FLAGS=\"-Wl,--no-undefined -Wl,--no-undefined\" -DCMAKE_INSTALL_PREFIX=$PWD/install -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE -DBUILD_SHARED_LIBS=ON -DNDEBUG=1 ..
make -j
make -j install
```
I notice that after I built it, for example, there is a
```
absl::variant_internal::ThrowBadVariantAccess()
```
in the file, but is there any way we can set the namespace to be as defined in `/mydir/abseil-cpp/absl/base/options.h`, Line 208~209:
```
#define ABSL_OPTION_USE_INLINE_NAMESPACE 1
#define ABSL_OPTION_INLINE_NAMESPACE_NAME lts_20211102
```

As when compiling my other project, it always raises the error like this:
```
../libtritonserver.so: undefined reference to `absl::lts_20211102::variant_internal::ThrowBadVariantAccess()'
```

### Steps to reproduce the problem

As listed above

### What version of Abseil are you using?

20211102.0, but I have also tried multiple other versions

### What operating system and version are you using?

RHEL 8

### What compiler and version are you using?

gcc 8.5

### What build system are you using?

cmake 3.26

### Additional context

_No response_

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。