小编syh*_*iel的帖子

在另一个目录中为“uses”运行 github 操作

我的 Maven 存储库位于./java目录中。我想在./java目录中运行 Maven 测试,但出现以下错误:

The goal you specified requires a project to execute but there is no POM in this directory (/github/workspace). Please verify you invoked Maven from the correct directory. -> [Help 1]
Run Code Online (Sandbox Code Playgroud)

这是我的工作流程:

# This is a basic workflow to help you get started with Actions

name: CI
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

  workflow_dispatch:


jobs:
  build:
    defaults:
      run:
        working-directory: java
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        
      - …
Run Code Online (Sandbox Code Playgroud)

github maven github-actions

9
推荐指数
1
解决办法
8475
查看次数

为什么 elf 的符号表中不包含 strlen ?

1.c使用调试信息进行编译:

\n
gcc -O0 -g ./1.c\n
Run Code Online (Sandbox Code Playgroud)\n
// 1.c\n#include <stdio.h>\n#include <string.h>\nint main() {\n  char c[222];\n  scanf("%s", c);\n  int a = strlen("dadw");\n  return 0;\n}\n
Run Code Online (Sandbox Code Playgroud)\n

但我找不到strlen通过readelf -a a.outnm ./a.out。根据我的理解,strlen是由动态链接提供libc.so并解决的。所以它应该出现在符号表中。难道是gcc的一些特殊trick造成的?

\n
\xe2\x9d\xaf nm ./a.out       \n000000000000038c r __abi_tag\n0000000000004010 B __bss_start\n0000000000004010 b completed.0\n                 w __cxa_finalize@GLIBC_2.2.5\n0000000000004000 D __data_start\n0000000000004000 W data_start\n00000000000010b0 t deregister_tm_clones\n0000000000001120 t __do_global_dtors_aux\n0000000000003db8 d __do_global_dtors_aux_fini_array_entry\n0000000000004008 D __dso_handle\n0000000000003dc0 d _DYNAMIC\n0000000000004010 D _edata\n0000000000004018 B _end\n00000000000011cc T _fini\n0000000000001160 t frame_dummy\n0000000000003db0 d __frame_dummy_init_array_entry\n00000000000020e8 r __FRAME_END__\n0000000000003fb0 d …
Run Code Online (Sandbox Code Playgroud)

c linux dynamic-linking

1
推荐指数
1
解决办法
88
查看次数

标签 统计

c ×1

dynamic-linking ×1

github ×1

github-actions ×1

linux ×1

maven ×1