小编Shu*_*eng的帖子

clang ++警告:“警告:未知警告选项'-Wno-maybe-uninitialized'”

使用以下命令在Ubuntu 16.04上安装LLVM:

sudo apt-get install clang llvm
Run Code Online (Sandbox Code Playgroud)

编译时出现以下错误:

nlykkei@nlykkei-VirtualBox:~$ clang++ -g toy.cpp `llvm-config --cxxflags --ldflags --system-libs --libs` -o toy
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
      '-Wno-uninitialized'? [-Wunknown-warning-option]
1 warning generated.
Run Code Online (Sandbox Code Playgroud)

具体而言,我遵循LLVM网站上的教程:http : //llvm.org/docs/tutorial/LangImpl03.html。

LLVM的版本是3.8。

我如何摆脱这个警告?

谢谢。

c++ ubuntu warnings llvm clang

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

当给定 IR 文件时,如何使 LLVM opt 输出 IR 文件?

我使用 LLVMopt来运行 pass,例如使用opt -load libMyPass.so my-pass foo.ll > foo1.ll.

foo.ll是一个 IR 文件,我想foo1.ll以 IR 格式包含运行该过程的结果。但foo1.ll变成了位码文件,所以我需要将llvm-dis foo1.ll其转换为 IR 格式。

如何避免运行llvm-disopt从 IR 格式转换为 IR 格式?

c++ compilation llvm llvm-clang

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

LLVM:如何将所有链接库指定为 llvm_map_components_to_libnames() 的输入

我需要一个额外的库作为链接器输入,因为链接器找不到符号。

llvm_map_components_to_libnames(llvm_libs support core bitreader)

target_link_libraries(SkeletonPass ${llvm_libs})
Run Code Online (Sandbox Code Playgroud)

组件中必须缺少缺少的库。

如何将所有组件指定为输入?

c++ cmake llvm

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

如何在与objdump输出的标签对应的ELF二进制文件中获取文件偏移量?

假设我有一个ELF二进制文件prog并假设objdump -d prog沿着以下行生成输出[snippet]:

0000000000400601 <.cstart_c941>:
  400601:   eb 01                   jmp    400604 <.end_c941>

0000000000400603 <.cslot_c941>:
  400603:   84                      .byte 0x84

0000000000400604 <.end_c941>:
  400604:   48 81 ec 80 00 00 00    sub    $0x80,%rsp
  40060b:   50                      push   %rax
  40060c:   53                      push   %rbx
  40060d:   56                      push   %rsi
  40060e:   48 31 c0                xor    %rax,%rax
  400611:   48 c7 c6 41 06 40 00    mov    $0x400641,%rsi
Run Code Online (Sandbox Code Playgroud)

我需要的是文件偏移对应.cslot_c941,因为我需要在这个位置修改字节.

我该如何完成这项任务?

c++ linux x86 assembly elf

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

Collections.sort(),给出"未经检查或不安全的操作"错误?

我从Java Version 8中得到错误:"使用未经检查或不安全的操作".

似乎问题来自于Collections.sort(),但问题是什么?我检查了Java Doc,一切似乎都很好,除了参数是a List,但ArrayListList我而言是一个?

import java.util.ArrayList;
import java.util.Collections;

public class Driver
{
    public static void test() 
    {
        ArrayList<Person> persons = new ArrayList<Person>();
        persons.add(new Person("Hans", "Car License"));
        persons.add(new Person("Adam", "Motorcycle License"));
        persons.add(new Person("Tom", "Car License"));
        persons.add(new Person("Kasper", "Car License"));

        System.out.println(persons);        
        Collections.sort(persons);   
        System.out.println(persons);

        System.out.println(Collections.max(persons));
        System.out.println(Collections.min(persons));
    }
}
Run Code Online (Sandbox Code Playgroud)

java collections

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

在 Bash 中使用选定的字符(或十六进制代码)将字符串填充到特定长度?

我想用任何选定的字符(或十六进制代码)将 Bash 中的字符串填充到一定长度。

假设我有字符串AABB并想使用Xor ( 0x00) 将其填充到长度 10:

AABBXXXXXX

我知道如何使用printf. 如何填充任意字符(或十六进制代码)?

linux bash shell

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

在 Python3 中计算极大数的立方根

我想在 Python3 中计算一个非常大的数字的立方根。

我已经尝试了下面的函数以及 Python 语法x ** (1 / n),但它们都产生了错误:

溢出错误:(34,'数值结果超出范围')

我真的需要计算立方根来解决密码学中的问题。

二分查找:

def find_invpow(x,n):
    """Finds the integer component of the n'th root of x,
    an integer such that y ** n <= x < (y + 1) ** n.
    """
    high = 1
    while high ** n < x:
        high *= 2
    low = high/2
    while low < high:
        mid = (low + high) // 2
        if low < mid and mid**n < x:
            low = mid …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

是否可以在 Dockerfile 中使用 FROM 指令拉取最新的镜像?

我想知道在继续构建之前,是否可以FROM在 Dockerfile 中制作一条指令来拉取最新的图像(例如image:latest)?

目前,仅当尚未在本地存储图像时才会拉取图像。

cloud docker kubernetes dockerfile docker-registry

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

C:如何使用(.)点运算符编写(x - > x-> x)

关于结构和指针,如何x->x->x使用点运算符编写此表达式?

使用箭头操作符:x->x->x我轻松访问第三个元素.使用点运算符:(*x).x如何使用点运算符访问第三个元素?

我知道箭头操作符是点运算符的快捷方式,所以应该可以使用点运算符到达第三个元素?我可以使用变量:

struct node *var
var = (*ptr).next
(*var).x = some value
Run Code Online (Sandbox Code Playgroud)

这真的让我很烦.一直在寻找教科书和互联网上的任何地方,无法找到答案.

c pointers

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

Java Scanner.hasNextLine()没有检测到空行?

假设我有以下文件

Hej Hej Hej
A A A A
Run Code Online (Sandbox Code Playgroud)

与A的线后的换行符.

我的问题是代码

while (in.hasNextLine()) {
    String line = in.nextLine();
    if (in.hasNextLine()) {
        out.println(line);
    }
    else {
        out.print(line);
    }
}
Run Code Online (Sandbox Code Playgroud)

没有检测到这个额外的行in.hasNextLine(),所以我错过了输出文件中的换行符(我正在做一个文件串联程序).问题是什么?

java

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