在mac终端应用程序中有一个设置(首选项 - >键盘),可让您将"使用选项设置为元键".这很有用,因为许多unix框bash用作默认shell,并且具有emacs键绑定M-f并且M-b可以跳过单词.
问题是在具有英国键盘的Mac上,#符号很难达到 - 通常可以输入alt-3,但如果你在终端并且alt = meta,则不会.
任何人都有一个很好的方式绕这个?
我正在尝试使用libtommath库.我在Ubuntu linux上使用NetBeans IDE作为我的项目.我已经下载并构建了库,我已经完成了'make install'以将生成的.a文件放入/ usr/lib /并将.h文件放入/ usr/include
它似乎是正确地找到文件(因为我不再得到这些错误,我在安装到/ usr目录之前做了这些错误).
但是,当我创建一个简单的main来调用mp_init(在库中)时,当我尝试创建项目时出现以下错误:
mkdir -p build/Debug/GNU-Linux-x86
rm -f build/Debug/GNU-Linux-x86/main.o.d
gcc -c -g -MMD -MP -MF build/Debug/GNU-Linux-x86/main.o.d -o build/Debug/GNU-Linux-x86/main.o main.c
mkdir -p dist/Debug/GNU-Linux-x86
gcc -o dist/Debug/GNU-Linux-x86/cproj1 build/Debug/GNU-Linux-x86/main.o
build/Debug/GNU-Linux-x86/main.o: In function 'main':
/home/[[myusername]]/NetBeansProjects/CProj1/main.c:18: undefined reference to `mp_init'
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/GNU-Linux-x86/cproj1] Error 1
Run Code Online (Sandbox Code Playgroud)
因此,看起来链接器无法在库中找到该函数,但它就在那里,所以我只是不知道是什么原因造成的.
如果我直接输入gcc命令并跳过makefile,我会得到同样的错误,我也确保静态库也用gcc编译.
编辑添加:
如果我直接编译并使用-l或-L添加库,我会得到同样的错误:
$ gcc -l /usr/lib/libtommath.a main.c
/usr/bin/ld: cannot find -l/usr/lib/libtommath.a
collect2: ld returned 1 exit status
$ gcc -llibtommath.a main.c
/usr/bin/ld: cannot find -llibtommath.a …Run Code Online (Sandbox Code Playgroud) 我知道如何做到这一点,但我想确保我做对了....
我有五个数据类.当我使用它时,我通常使用它们(但并非总是如此).
每个类都有一个单独的头文件.我厌倦了分别链接每个头文件.
解决此问题的最佳方法是什么?
我有一个选择状态和一个UIButton的正常状态,它们都是UIImages.触摸按钮时,我希望它能够达到选定状态,然后在一秒钟内恢复正常状态.按下UIButton*btn时,我设置了以下动画,但它只是再次切换回取消选择状态.我该如何实现这一目标?
[btn setSelected:YES];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];
[btn setSelected:NO];
[UIView commitAnimations];
Run Code Online (Sandbox Code Playgroud)
干杯
聂
我认为应该很容易创建一个ProgressBar吸取一些文本的东西.但是,我不太清楚这里发生了什么......
我添加了以下两个覆盖:
protected override void OnPaintBackground(PaintEventArgs pevent)
{
base.OnPaintBackground(pevent);
var flags = TextFormatFlags.VerticalCenter | TextFormatFlags.HorizontalCenter | TextFormatFlags.SingleLine | TextFormatFlags.WordEllipsis;
TextRenderer.DrawText(pevent.Graphics, "Hello", Font, Bounds, Color.Black, flags);
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
var flags = TextFormatFlags.VerticalCenter | TextFormatFlags.HorizontalCenter | TextFormatFlags.SingleLine | TextFormatFlags.WordEllipsis;
TextRenderer.DrawText(e.Graphics, "Hello", Font, Bounds, Color.Black, flags);
}
Run Code Online (Sandbox Code Playgroud)
但是,我没有文本,甚至似乎都没有调用这些方法.这里发生了什么?
更新:由于到目前为止的两个答案,我已经得到它实际调用OnPaint使用SetStyle(ControlStyles.UserPaint, true),我已经得到它通过发送new Rectangle(0, 0, Width, Height)而不是在正确的地方绘制文本Bounds.
我现在确实得到了文字,但是ProgressBar它已经消失了...而且重点是将文本置于文本之上ProgressBar.知道如何解决这个问题吗?
我正在用Java设计一个小软件.我不知道我正在做什么的术语/定义,但我提示从Java到终端的命令.像这样的东西:
Process process = Runtime.getRuntime().exec("command");
Run Code Online (Sandbox Code Playgroud)
我以前在Linux中做过这个,我用过gksudo需要root密码的命令.
gksudoOS X中有没有?任何要求root密码的图形弹出窗口?
我需要一个库来处理项目中的计算几何,尤其是布尔运算,但几乎每个特性都是有用的.我能找到的最好的库是CGAL,但这是我在没有垃圾收集时会犹豫不决的那种项目.
你能推荐哪些语言/图书馆对?到目前为止,我最好的选择是将CGAL导入D.还有一个用于为CGAL制作Python绑定的项目,但它非常不完整.
python binding garbage-collection cgal computational-geometry
我需要编写在c#中运行速度快的状态机.我喜欢Windows Workflow Foundation库,但它太慢而且过于拥挤(特别重).我需要更快的东西,理想情况下使用图形工具来设计图表,然后吐出c#代码.有什么建议?谢谢!
我们的大多数项目都使用了很多常用代码.我们(最终)正朝着我们以统一方式管理共享代码的系统迈进.我们将共享代码视为SVN中的单独项目,然后将其作为外部引用.但是,由于将库从一种用户移植到另一种用途不可避免的问题,我们倾向于在项目开发过程中将外部库指向开发分支甚至是主干.
因此,在为发布或内部里程碑标记文件时,我们一直在犯错误.偶尔我们将标记一个项目,而不确保所有外部都已被标记.我们怎样才能解决这个问题?我正在寻找方法来减少错误的可能性或在制作这样的草率标签后恢复/修复.理想情况下,解决方案是使SVN强制执行当前策略的一种方法,但我对任何遇到此类问题的经验感兴趣.