64位库可以编译成功吗
Ⅰ 如何编译64位 boost类库
64位windows平台,编译环境是VS2005,进入Visual Studio 2005 x64 Win64 Command Prompt(单纯的cmd也不一定不行,我没试)。把bjam.exe放在boost根目录下,进入根目录,执行:
bjam --toolset=msvc address-model=64 --with-thread stage
bjam --toolset=msvc address-model=64 --with-date_time stage
关键选项:“address-model=64 ”
64位linux平台,使用gcc编译。进入boost根目录,执行:
./bjam --toolset=gcc --with-thread stage
./bjam --toolset=gcc --with-date_time stage
linux平台下倒是简单,不过网上有篇文章介绍用如下命令编译,不知道是多此一举,还是适用于某些情况(非64位linux主机?)。
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-thread stage
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-date_time stage
唉。命令都很简单,可浪费了我不少时间。usage根本没写,去看boost build的嘛,页数n多不说,看完之后能否找到答案还是未知数。网上相关资料很少而且大多南辕北辙,只好一直搜索+尝试。其实我只是想要个64位版本的库而已,这应该不是啥稀罕的需求吧?
在windows平台下,编译出来的是否是64位类库,只有link 64位程序的时候才能发现。如果不是,link程序无法找到类库中定义的函数或者类。linux不知道,因为我整出来直接就是64位了,我也懒得再找一台32位linux主机折腾了。
在1.37之后的boost,如果想要使用boost::thread库,必须有boost::date_time库。当然这件事情又一如既往很酷地没有出现在容易看到的地方。而是让你链接错误后再去玩抓虫游戏。
转载,仅供参考。
Ⅱ 如何编译64位 boost类库
64位windows平台,编译环境是VS2005,进入Visual Studio 2005 x64 Win64 Command Prompt(单纯的cmd也不一定不行,我没试)。把bjam.exe放在boost根目录下,进入根目录,执行:
bjam --toolset=msvc address-model=64 --with-thread stage
bjam --toolset=msvc address-model=64 --with-date_time stage
关键选项:“address-model=64 ”
64位Linux平台,使用gcc编译。进入boost根目录,执行:
./bjam --toolset=gcc --with-thread stage
./bjam --toolset=gcc --with-date_time stage
linux平台下倒是简单,不过网上有篇文章介绍用如下命令编译,不知道是多此一举,还是适用于某些情况(非64位linux主机?)。
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-thread stage
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-date_time stage
唉。命令都很简单,可浪费了我不少时间。usage根本没写,去看boost build的嘛,页数n多不说,看完之后能否找到答案还是未知数。网上相关资料很少而且大多南辕北辙,只好一直搜索+尝试。其实我只是想要个64位版本的库而已,这应该不是啥稀罕的需求吧?
在windows平台下,编译出来的是否是64位类库,只有link 64位程序的时候才能发现。如果不是,link程序无法找到类库中定义的函数或者类。linux不知道,因为我整出来直接就是64位了,我也懒得再找一台32位linux主机折腾了。
在1.37之后的boost,如果想要使用boost::thread库,必须有boost::date_time库。当然这件事情又一如既往很酷地没有出现在容易看到的地方。而是让你链接错误后再去玩抓虫游戏。
转载,仅供参考。
Ⅲ Mac OS X 64位 编译本地库失败,不知是否有兄弟有成功编译好的
首先在FFmpeg官网下载一个版本,在“FFmpeg Releases”一栏下选择一个版本:
http://ffmpeg.org/download.html
然后,直接进行解压。打开OS X的Terminal,使用cd命令进入该项目目录。
如果你的OS X使用了最新的XCode 4.3.x或更新版本,那么所有编译工具均以沙盒状态呈现,即没有注册到系统环境,因此不能直接通过命令行进行编译。此时需要进入
https://developer.apple.com/devcenter/mac/index.action
即Mac开发者主页。使用开发者帐号登陆(即便没有支付过99$成为iDP或mDP都没有关系),然后找到“Additional Downloads”一览,点击“View all downloads”。最后选择最新版本的“Command Line Tools for XCode”进行下载。
下载完后直接安装即可。
然后可以使用命令行进行编译。由于Apple现在已经弃用老陈的GCC而使用更为先进的LLVM CLang,因此我们可以直接使用CLang进行编译。我们可以先用命令——clang --version
来查看clang编译器的版本信息,并确定其有效性。
随后,我们输入命令——./configure --cc=clang --disable-asm
这里使用--cc选项来选择编译器使用clang;而--disable-asm用来禁止所有牵涉到汇编文件的汇编,因为Apple的LLVM自带的汇编器可能与GCC的默认风格有些不同。
成功后,我们再输入命令——make
最后再输入命令——sudo make install
输入登机密码即可。
最后会生成一个ffmpeg可执行文件在当前工程目录中。
Ⅳ Windows 64位系统编译openssl无法成功吗
1)打开VS Studio命令行工具。若编译64位OpenSSL库,请打开Visual Studio x64 Win64 Command Prompt,反之亦然。
2)配置编译文件及安装目录;
编译Win32:perl Configure VC-WIN32 --prefix=c:\some\openssl\dir
编译Win64:perl Configure VC-WIN64A
“c:\some\openssl\dir”目录可以改成任何你希望的安装目录
3)搭建编译环境:
ms\do_nasm
ms\do_ms
对于64位编译,将ms\do_ms替换成ms\do_win64a
4)编译OpenSSL
nmake -f ms\ntdll.mak
5)安装编译生成的库到“c:\some\openssl\dir”
nmake -f ms\ntdll.mak install
Ⅳ C语言如何编译出64位的可执行文件
可以用dev-cpp 编译器(64位的版本),可以选择输出32或者64位的可执行文件。
Ⅵ 如何编译64位 boost类库
64位windows平台,编译环境是VS2005,进入Visual Studio 2005 x64 Win64 Command Prompt(单纯的cmd也不一定不行,我没试)。把bjam.exe放在boost根目录下,进入根目录,执行:
bjam --toolset=msvc address-model=64 --with-thread stage
bjam --toolset=msvc address-model=64 --with-date_time stage
关键选项:“address-model=64 ”
64位Linux平台,使用gcc编译。进入boost根目录,执行:
./bjam --toolset=gcc --with-thread stage
./bjam --toolset=gcc --with-date_time stage
linux平台下倒是简单,不过网上有篇文章介绍用如下命令编译,不知道是多此一举,还是适用于某些情况(非64位linux主机?)。
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-thread stage
./bjam --toolset=gcc "-sBUILD=release <cxxflags>-m64" --with-date_time stage
唉。命令都很简单,可浪费了我不少时间。usage根本没写,去看boost build的嘛,页数n多不说,看完之后能否找到答案还是未知数。网上相关资料很少而且大多南辕北辙,只好一直搜索+尝试。其实我只是想要个64位版本的库而已,这应该不是啥稀罕的需求吧?
在windows平台下,编译出来的是否是64位类库,只有link 64位程序的时候才能发现。如果不是,link程序无法找到类库中定义的函数或者类。linux不知道,因为我整出来直接就是64位了,我也懒得再找一台32位linux主机折腾了。
在1.37之后的boost,如果想要使用boost::thread库,必须有boost::date_time库。当然这件事情又一如既往很酷地没有出现在容易看到的地方。而是让你链接错误后再去玩抓虫游戏。
Ⅶ 如何编译64位dll程序,有几种情况,在32位XP上用VC++6.0或者VS2010该怎么编译64位的dll。
在64位的操作系统上用vs软件编译的dll默认就是64位。
在32位XP上用VC++6.0编译64位的dll,需要安装sdk(最新版本是sdk2003),在开始菜单——sdk——open build environment window——windows server 2003 64-bit build environment——set win svr 2003 x64 build env进入命令行,从命令行调用msdev,将vc选项里的include和lib的第一个默认路径设为sdk目录下64位头文件和库的路径,编译出的dll似乎就是64位的了。这个是从网页上看到的,没实践过。
在32位XP上使用vs2010就简单多了,新建一个项目(解决方案),加入代码,设置X64,编译生成即可。
Ⅷ 如何编译openssl 64位库
、使用VS2005下的Visual Studio 2005 Command Prompt进入控制台模式(这个模式会自动设置各种环境变量)
、解压缩openssl的包,进入openssl的目录
、perl configure VC-WIN32
尽量在这个目录下执行该命令,否则找不到Configure文件,或者指定完整的Configure文件路径。
、ms\do_ms
在解压目录下执行ms\do_ms命令
、nmake -f ms\ntdll.mak编译后在openssl解压目录下执行,完成编译后。输出的文件在out32dll里面,包括应用程序的可执行文件、lib文件和dll文件
注意:在运行第五步时,cl编译器会抱怨说.\crypto\des\enc_read.c文件的read是The POSIX name for this item is deprecated(不被推荐的),建议使用_read。呵呵,我可不想将OpenSSL中的所有的read函数修改为_read。再看cl的错误代码 error C2220,于是上MSDN上查找:
warning treated as error - no object file generated
/WX tells the compiler to treat all warnings as errors. Since an error occurred, no object or executable file was generated.
是由于设置了/WX选项,将所有的警告都作为错误对待,所以。。。
于是打开OpenSSL目录下的MS目录下的ntdll.mak文件,将CFLAG的/WX选项去掉,存盘。。。