我正在运行32位版本的Ubuntu 10.10并尝试交叉编译为64位目标.根据我的研究,我已经安装了g ++ - multilib包.
该程序是一个非常简单的hello世界:
#include <iostream>
int main( int argc, char** argv )
{
std::cout << "hello world" << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
编译:
g++ -m64 main.cpp
Run Code Online (Sandbox Code Playgroud)
错误:
In file included from main.cpp:1:
/usr/include/c++/4.4/iostream:39: fatal error: bits/c++config.h: No such file or directory
compilation terminated.
Run Code Online (Sandbox Code Playgroud)
我发现了一个c++config.h
文件,但他们居住下i486-linux-gnu
和i686-linux-gnu
目录中/usr/include/c++/4.4/
没有c++config.h
的/usr/include/c++/bits
.
关于我失踪的任何想法?没有-m64
标志的编译工作正常(创建并正确运行a.out).
编辑感谢来自@nightcracker的提示,我对32位和64位系统上的包含结构进行了一些调查.我在下面添加了一个答案,暂时"修复"了问题,但我认为它会在下次更新时中断.基本上,我错过了一个名为的目录/usr/include/c++/4.4/i686-linux-gnu/64
,该目录应包含一个名为bits
具有缺失包含文件的子目录.知道什么包应该照顾这个吗?
如何使用Windows批处理文件从文本文件中读取第一行?由于文件很大,我只想处理第一行.
如何在C++中设置环境变量?
谢谢
我有一些我想要想象的数据.源数据的每个字节大致对应于图像的像素值.
使用Python生成图像文件(位图?)的最简单方法是什么?
我正在开发一个自定义的.emacs文件,我可以在几台不同的计算机上使用它.我希望能够加载一个模式,如果它存在于系统上.如果它不存在,我希望Emacs停止显示错误:File error: Cannot open load file, X
.
例如:
(require 'darkroom-mode)
Run Code Online (Sandbox Code Playgroud)
结果是:
File error: Cannot open load file, darkroom-mode
Run Code Online (Sandbox Code Playgroud)
我file-exists-p
用来测试是否存在某些其他文件但是对于这个测试我会假设我需要搜索我的加载路径.我是Lisp的新手,所以这让我很难过.
我正在使用子进程模块中的Popen函数来执行命令行工具:
subprocess.Popen(args, bufsize=0, executable=None, stdin=None, stdout=None, stderr=None, preexec_fn=None, close_fds=False, shell=False, cwd=None, env=None, universal_newlines=False, startupinfo=None, creationflags=0)
Run Code Online (Sandbox Code Playgroud)
我正在使用的工具会获取一个然后处理的文件列表.在某些情况下,此文件列表可能会很长.有没有办法找到args参数的最大长度?有大量文件传递给该工具,我收到以下错误:
Traceback (most recent call last):
File "dump_output_sopuids.py", line 68, in <module>
uid_map = create_sopuid_to_path_dict_dcmdump(dicom_files)
File "dump_output_sopuids.py", line 41, in create_sopuid_to_path_dict_dcmdump
dcmdump_output = subprocess.Popen(cmd,stdout=subprocess.PIPE).communicate(0)[0]
File "c:\python26\lib\subprocess.py", line 621, in __init__
errread, errwrite)
File "c:\python26\lib\subprocess.py", line 830, in _execute_child
startupinfo)
WindowsError: [Error 206] The filename or extension is too long
Run Code Online (Sandbox Code Playgroud)
有没有找到这个最大长度的一般方法?我在msdn上发现了以下文章:命令提示符(Cmd.exe)命令行字符串限制但我不想在值中硬编码.我宁愿在运行时获取值以将命令分解为多个调用.
我在Windows XP 64上使用Python 2.6.
编辑:添加代码示例
paths = ['file1.dat','file2.dat',...,'fileX.dat']
cmd = ['process_file.exe','+p'] …
Run Code Online (Sandbox Code Playgroud) 我的工作场所使用Subversion进行源代码控制,所以我一直在使用git-svn来获取我自己的分支的优点,我可以随意提交,而不需要触及主回购等.
由于我的git svn checkout是本地的,我已将其克隆到网络共享以充当备份.我的想法是,如果我的桌面进行转储,我至少会在网络共享上拥有回购,以获得我尚未有机会提交的更改.
我的工作流程是从桌面工作,进行更改,提交等.在一天结束时,我想用我当前的所有更改来更新网络共享上的repo.我在网络共享上设置了repo git clone repo_on_my_desktop
,然后使用更新网络共享上的repo git pull origin master
.我遇到的问题是当我在git rebase
提交到主svn存储库之前使用do a 来压缩多次提交时.当我这样做时,当我尝试在晚上备份时,我在网络共享上的repo上发生合并冲突.
有没有办法简单地与桌面上的存储库完全同步,而不是git clone
每晚都做新的?
从正在加载和运行的lisp文件中,emacs -l path/to/script/foo.el
我可以获得运行文件的路径吗?
例如,有没有办法确定path/to/script
内部是foo.el
什么?
我对lisp不是很有经验所以请温柔地对待你的解决方案.
Windows 7上的Emacs 22.3.1