小编eri*_*ous的帖子

Google Go错误 - "无法生成类型"

在我的Go代码中,我想创建一个自定义数据类型的数组.我打电话

Blocks=make(*BlockData, len(blocks))
Run Code Online (Sandbox Code Playgroud)

我收到错误:

cannot make type *BlockData
Run Code Online (Sandbox Code Playgroud)

我的类BlockData包含诸如uint64,int64,float32,string,[] byte,[] string和[]*TransactionData之类的字段类型.最后一个是指向另一个自定义类的指针数组.

我该怎么做才能解决这个错误?

compiler-errors go

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

无法通过mingw编译wxwidgets,跟随zip文件附带的install.txt

我正在尝试编译wxwidgets.我正在使用mingw32编译并遵循zip文件附带的install.txt,但是当我编译它时,它会给我这些错误.

if not exist gcc_mswd mkdir gcc_mswd
process_begin: CreateProcess(NULL, -c "if not exist gcc_mswd mkdir gcc_mswd", ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: [gcc_mswd] Error 2 (ignored)
if not exist ..\..\lib\gcc_lib mkdir ..\..\lib\gcc_lib
process_begin: CreateProcess(NULL, -c "if not exist ..\..\lib\gcc_lib mkdir ..\..\lib\gcc_lib", ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: *** [..\..\lib\gcc_lib] Error 2

任何帮助表示赞赏.

PS:我正在使用mingw32-make,如果这有所作为.

wxwidgets mingw compilation mingw32

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

如何编写干净的Makefile?

我所处理的Makefile大部分都是复杂的,隐藏了很多关系.我自己从未写过一篇,并且想知道是否有人有关于编写易于阅读和可重用的Makefile的一些技巧?

makefile

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

函数调用在包含write语句时停止/挂起,但仅在编译期间与某些库链接时

这是我的最小例子:

program test    
  implicit none
  real :: testfunc
  write(*,*) "Writing from main"
  write(*,*) testfunc()
end program test

function testfunc() result(y)
  real             :: y
  write(*,*) "Write from function g"
  y=1.0
  return
end function testfunc
Run Code Online (Sandbox Code Playgroud)

用简单的编译时

gfortran test.f90
Run Code Online (Sandbox Code Playgroud)

或者包括像Slatec这样的图书馆

gfortran test.f90 -lslatec
Run Code Online (Sandbox Code Playgroud)

它工作正常.

但是,当将库更改为-lback的-llapack时,程序在调用testfunc()时会在运行时挂起.请注意,我的示例代码实际上并不使用任何这些库.我看到的最后一件事是"从主要写作",然后没有任何反应,我必须按CTRL-C重新获得控制权.挂起时,该过程似乎没有使用任何CPU周期.

现在奇怪的是,如果我在testfunc()中注释掉write语句,它会一直有效.

所以我的问题是:这些库真的可以阻止我在我自己的函数中打印吗?为什么?怎么样?

(我实际上正在开发一个需要lapack和blas的大型程序,所以我显然不能只是停止链接它们.)

fortran fortran90

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

在OS X Lion中编译64位FLAC/libFLAC

我想在我正在尝试构建的应用程序中使用libFLAC动态库,但我不太熟悉configuremake实际获得FLAC编译的参数.

我试过CC="gcc -m64" CXX="g++ -m64" ./configure,看起来运行没问题,但是当我跑make,我仍然得到

[...lots of output with seemingly no errors...]  
/usr/bin/ranlib: archive member: .libs/libFLAC.a(bitreader_asm.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)
/usr/bin/ranlib: archive member: .libs/libFLAC.a(cpu_asm.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)
/usr/bin/ranlib: archive member: .libs/libFLAC.a(fixed_asm.o) cputype (7) does not match previous archive members cputype (16777223) (all members must match)
/usr/bin/ranlib: archive member: .libs/libFLAC.a(lpc_asm.o) cputype …

64-bit makefile configure osx-lion

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

如何获取充当stdin/stdout的文件名?

我有以下问题.我想在Fortran90中编写一个程序,我希望能够像这样调用:

./program.x < main.in > main.out
Run Code Online (Sandbox Code Playgroud)

除了"main.out"(我可以在调用程序时设置其名称),还必须编写辅助输出,我希望它们具有与"main.in"或"main.out"类似的名称(它们是实际上并没有被称为"主要"); 但是,当我使用时:

INQUIRE(UNIT=5,NAME=sInputName)
Run Code Online (Sandbox Code Playgroud)

sInputName的内容变为"Stdin"而不是文件名.有没有办法获取程序调用时链接到stdin/stdout的文件名?

io stdin fortran stdout fortran90

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

使用Awk删除空格

我有一个文件形式:

Firstname LastName; 123-4567; Job Title
    Firstname LastName;   123-4567;      Job Title
Firstname LastName;      123-4567; Job Title
...
Run Code Online (Sandbox Code Playgroud)

我试图使用awk将文件解析为makedbm可读的形式(以制作自定义NIS映射).字段分隔符是分号.我需要能够从每行的每个字段中删除所有前导空格,但在名称字段和标题字段中留下空格.谢谢.

awk nis centos

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

-O0,-O1和-g之间有什么区别?

我想知道使用-O0,-O1和-g来启用lib中的调试符号.有些人建议使用-O0来启用调试符号,有些人建议使用-g.

那么-g和-O0之间的实际差异是什么?-01和-O0之间的区别是什么,哪个最好用.

c c++ gcc

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