FlexCombinedNonMaxSuppression unavailable in flex shared library
[object_detection.zip](https://github.com/tensorflow/tensorflow/files/11733741/object_detection.zip)

![image](https://github.com/tensorflow/tensorflow/assets/34178422/c2092493-19b4-4589-b92c-6859bb1c7511)

This is the model I am using to reproduce the issue. Hi @dutrad 

Can you check if the Flex delegate is linked correctly to the TFLite interpreter?

Also, try 
`bazel build --config=monolithic --fat_apk_cpu=x86_64 --config=noaws --config=nogcp --config=nohdfs --config=nonccl  tensorflow/lite/delegates/flex:tensorflowlite_flex` 
and let us know if it works for your case.

Thanks.

 I tested my application with the library generated with the command you sent and I got pretty much the same error:

INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
ERROR: Select TensorFlow op(s), included in the given model, is(are) not supported by this interpreter. Make sure you apply/link the Flex delegate before inference. For the Android, it can be resolved by adding "org.tensorflow:tensorflow-lite-select-tf-ops" dependency. See instructions: https://www.tensorflow.org/lite/guide/ops_select
ERROR: Node number 276 (FlexCombinedNonMaxSuppression) failed to prepare.
ERROR: Select TensorFlow op(s), included in the given model, is(are) not supported by this interpreter. Make sure you apply/link the Flex delegate before inference. For the Android, it can be resolved by adding "org.tensorflow:tensorflow-lite-select-tf-ops" dependency. See instructions: https://www.tensorflow.org/lite/guide/ops_select
ERROR: Node number 276 (FlexCombinedNonMaxSuppression) failed to prepare. I checked if the flex delegate was properly loaded when the application was running. Turns out, it wasn't. Running `lsof -p 2644917 | grep tensor` it is clear that the binary was only loading the libtensorflowlite.so

I'm building my application with gcc (version 9.4) and for some reason it is not linking the libraries correctly, even though, the build logs show the flex delegate being linked.

The problem was fixed when I switched to clang (version 10.0.0). The binary created loads the flex delegate libraries and the TFLite interpreter runs without issues.

Is this a known issue with gcc? Do you know any workaround to make gcc link correctly? Hi @dutrad 

As per build configurations reported in the [documentation](https://www.tensorflow.org/install/source#cpu), the latest TF requires Clang compiler for linux because of which the FlexDelegate issue might be caused when gcc is used.

Thanks.
 Thanks for the support, @pjpratik 
<details><summary>Click to expand!</summary> 
 
 ### Issue Type

Feature Request

### Have you reproduced the bug with TF nightly?

No

### Source

source

### Tensorflow Version

v2.12.0

### Custom Code

Yes

### OS Platform and Distribution

Linux Ubuntu 20.04.6

### Mobile device

_No response_

### Python version

_No response_

### Bazel version

6.2.0

### GCC/Compiler version

9.4.0

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current Behaviour?

I have network that runs with no problem on Android that uses the operator FlexCombinendNonMaxSuprpression. When running the same network and code on an x86 machine, the log output tells me that this operator is not supported by this interpreter.

I have built from source the necessary libraries, libtensorflowlite.so and libtensorflowlite_flex.so

### Standalone code to reproduce the issue

```shell
`
  /* Allocate Tensors */
  retTflite = _interpreter->AllocateTensors();
  if (retTflite == kTfLiteOk)
  {
    _engineReady = true;
  }
`
```


### Relevant log output

```shell
ERROR: Select TensorFlow op(s), included in the given model, is(are) not supported by this interpreter. Make sure you apply/link the Flex delegate before inference. For the Android, it can be resolved by adding "org.tensorflow:tensorflow-lite-select-tf-ops" dependency. See instructions: https://www.tensorflow.org/lite/guide/ops_select
ERROR: Node number 276 (FlexCombinedNonMaxSuppression) failed to prepare.

INFO: Failed to apply the default TensorFlow Lite delegate indexed at 0 because of unresolved ops (which could be resolved by another delegate). Ignoring the error, and continuing anyway.
ERROR: Select TensorFlow op(s), included in the given model, is(are) not supported by this interpreter. Make sure you apply/link the Flex delegate before inference. For the Android, it can be resolved by adding "org.tensorflow:tensorflow-lite-select-tf-ops" dependency. See instructions: https://www.tensorflow.org/lite/guide/ops_select
ERROR: Node number 276 (FlexCombinedNonMaxSuppression) failed to prepare.
```
</details>