code: def test_compile2(self):
      # Compile source and link the second source
      tsi = self.c_temp2
      c = customized_ccompiler()
      extra_link_args = tsi.calc_extra_info()["extra_link_args"]
      previousDir = os.getcwd()
      try:
          # Change directory to not screw up directories
          os.chdir(self._dir2)
          c.compile(
              [os.path.basename(self._src2)],
              output_dir=self._dir2,
              extra_postargs=extra_link_args,
          )
          # Ensure that the object exists
          assert_(os.path.isfile(self._src2.replace(".c", ".o")))
      finally:
          os.chdir(previousDir)
  
imports: import os
  import shutil
  import pytest
  from tempfile import mkstemp, mkdtemp
  from subprocess import Popen, PIPE
  import importlib.metadata
  from distutils.errors import DistutilsError
  from numpy.testing import assert_, assert_equal, assert_raises
  from numpy.distutils import ccompiler, customized_ccompiler
  from numpy.distutils.system_info import system_info, ConfigParser, mkl_info
  from numpy.distutils.system_info import AliasedOptionError
  from numpy.distutils.system_info import default_lib_dirs, default_include_dirs
  from numpy.distutils import _shell_utils
label_desc: Use image node_id 8 for calling the TestSystemInfoReading obj's underlying member method code with example usage: obj.test_compile2() without return types