DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: lwf26
今日帖子: 44
在线用户: 23
导航: 论坛 -> 网络通讯 斑竹:liumazi,sephil  
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/1 3:46:27
标题:
有没有大侠用10.3.2编译boost的coroutine 浏览:777
加入我的收藏
楼主: 听说10.3.2支持c++17,有没有大侠用10.3.2编译boost,我想是否能够使用其中的coroutine,然后编译成obj在delphi中使用,附件为 boost 1.7的有关 coroutine源码,在此先谢过了
此帖子包含附件:142857_20198134626.rar 大小:检测失败
----------------------------------------------
ddddd
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/2 15:11:45
1楼: https://community.idera.com/developer-tools/b/blog/posts/boost-for-c-builder-10-3-1


Boost库现在可用于C ++ Builder和RAD Studio 10.3.1。
只要启动c++builder,进入 getit package manager

getit 已经可以看到,就是下载不了,

另外:
https://community.idera.com/developer-tools/b/blog/posts/temporary-10-3-2-getit-server-for-installing-10-3-2-add-on-packages
此帖子包含附件:
文件未找到
大小:检测失败
----------------------------------------------
ddddd
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/2 15:12:22
2楼: 有谁能够成功安装.把安装后的目录打包发给一下,在此万分感谢
此帖子包含附件:
文件未找到
大小:检测失败
----------------------------------------------
ddddd
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/2 15:17:43
3楼: ps:

https://community.idera.com/developer-tools/b/blog/posts/new-10-3-2-getit-installer

新的10.3.2 GetIt安装程序
----------------------------------------------
ddddd
作者:
男 glwang (glwang) ★☆☆☆☆ -
盒子活跃会员
2019/8/2 16:34:15
4楼: 您可能知道,最近我们遇到了一些影响安装的服务器问题。

在此期间,安装的解决方法是使用基于ISO的脱机安装程序。但是,GetIt是包括Boost在内的许多库的源头,它仍处于脱机状态。
----------------------------------------------
-
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/4 21:15:16
5楼: 终于有大神出手了

http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1_68_Win64_10.3.2.zip

可以直接下载,先下载看看
----------------------------------------------
ddddd
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/4 22:25:44
6楼: https://www.board4all.biz/threads/boost-libraries-for-embarcadero-c-builder-10-3-rio.771608/

如何离线安装
----------------------------------------------
ddddd
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2019/8/5 0:53:24
7楼: 按你这个方法,是不是所有的C++类库都可以给Delphi使用啊??
----------------------------------------------
只有偏执狂才能生存!
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/5 9:06:32
8楼: 是啊,delphi就这点好处,不用重复造轮子,可以调最火的python库,可以调用.net库,可以调用开源的c++库
----------------------------------------------
ddddd
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/5 9:32:30
9楼: 楼上在说笑话?
纯 C 实现的库,delphi 大多能调用,但我要用 Intel 纯 C 实现的新版 MKL,终没成功,原因可能是编译 MKL 的 C 编译器实现机制改变,生成的库结构有变化,而 delphi 不识知这样的的改变。
用 C++ 实现的库基本无法应用于 delphi,C++ 有重载等特性,C++编译器在编译同名函数时会依照规则为同名函数增添不同的前缀或后缀,而若使用 delphi 调用时,因不知实际函数名而调用失败。
delphi、CB(使用了特异的 PE 结构)之所以使用的人不多,原因之一就是不能便捷调用第三方库。
----------------------------------------------
-
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/5 9:41:36
10楼: 楼上的,用c++builder编译C++库,然后写个包装wrap函数,函数里面有delphi不能识别的特性如vector等等,外面用函数参数,编译成obj,供delphi调用
----------------------------------------------
ddddd
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/5 9:45:33
11楼: 最好的实现方式可以用interface,这个是delphi和c++builder通用的,可以实现混合调用
----------------------------------------------
ddddd
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/5 9:46:21
11楼: 大多数第三方库都不提供源码。
既使提供源码,绝大多数都非为CB所提供,都需花大力气进行改写,才能使用CB进行编译。
----------------------------------------------
-
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/5 9:50:26
12楼: 那就是你的水平问题了,c++builder的clang编译器,已经基本确保可以编译大多数的开源c++库。这个是基础
----------------------------------------------
ddddd
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/5 9:51:27
12楼: 我也想在 CB 下使用最新版 boost,国外有网友提供了编译方法,几次尝试,都没成功。
----------------------------------------------
-
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/5 9:52:12
13楼: 老兄水平高,佩服!
----------------------------------------------
-
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/5 9:55:45
14楼: 现在 boost 最新版是1.70,使用 CB 编译好后,发扬奉献精神发布出来,也让我少受熬煎,先谢过了!
----------------------------------------------
-
作者:
男 chinaz (有缘人) ▲▲▲▲▲ -
神秘会员
2019/8/5 17:54:58
15楼: 对于新版本Rio 10.3.2 
现在应该将Win64编译器的路径设置为存储boost_1_68的位置。
Win64现在是CLang,而1.68是CLang。
以前版本的XE应该继续使用1.55。

Boost Library from Embarcadero(GetIt)

Official links:
Download http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1.39-20190514.zip

Unpack contents of the Boost_1.39-20190514.zip to any target folder

Extract contents from Source to Destination
"boost_1_39_redist_win32.zip\redist\boost\win32" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\boost\win32"
"boost_1_39.7zip\include\boost_1_39" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\include\boost_1_39"
"boost_1_39_lib_win32.7zip\lib\win32\release" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win32\release"

Extract Boost_setup.bat
Open CMD as Administrator and run the command
[Boost_setup.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\Environment Variables" PATH "$(BDS)\redist\boost\win32" ]


Download http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1.55-20190514.zip

Unpack contents of the Boost_1.55-20190514.zip to any target folder
Extract contents from Source to Destination
"boost_1_55_redist_win64.zip\redist\boost\win64" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\boost\win64"
"boost_1_55.7zip\include\boost_1_55" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\include\boost_1_55"
"boost_1_55_lib_win64.7zip\lib\win64\release" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win64\release"

Extract Boost_setup.bat
Open CMD as Administrator and run the command
["Boost_setup.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\Environment Variables" PATH "$(BDS)\redist\boost\win64""]


Download http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1.68-20190514.zip
Unpack contents of the Boost_1.68-20190514.zip to any target folder

Extract contents from Source to Destination
"boost_1_68_redist_win32c.zip\redist\boost\win32c" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\boost\win32c"
"boost_1_68.7zip\include\boost_1_68" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\include\boost_1_68"
"boost_1_68_lib_win32c.7zip\lib\win32c\release" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win32c\release"

Extract Boost_setup.bat
Open CMD as Administrator and run the commands
["Boost_setup_includepath.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\C++\Paths\Win32" IncludePath_Clang32"]
["Boost_setup.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\Environment Variables" PATH "$(BDS)\redist\boost\win32c""]

New BOOSTS!!! FOR RAD STUDIO 10.3.2
Download http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1_68_Win64_10.3.2.zip

Unpack contents of the Boost_1_68_Win64_10.3.2.zip to any target folder
Extract contents from Source to Destination
"boost_1_68_redist_win64.zip\redist\boost\win64" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\boost\win64"
"boost_1_68.7zip\include\boost_1_68" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\include\boost_1_68"
"boost_1_68_lib_win64.7zip\lib\win64\release" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win64\release"

Extract Boost_setup.bat
Open CMD as Administrator and run the command
["Boost_setup.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\Environment Variables" PATH "$(BDS)\redist\boost\win64"]

Launch RAD Studio IDE as Administrator advisably

Drill down to: Tools>Options>Language>C++ Options>Path and Directories

Make sure for placeholders existence.

Windows 32-Bit
Compiler->System Include Path:
$(CG_32_BOOST_ROOT)

Classic Compiler->System Include Path:
$(CG_BOOST_ROOT)\boost\tr1\tr1
$(CG_BOOST_ROOT)

Windows 64-Bit
Compiler->System Include Path:
$(CG_64_BOOST_ROOT)\boost\tr1\tr1
$(CG_64_BOOST_ROOT)

Restart RAD Studio IDE.

Clarification of above post:
If standard setup to "c:\program files (x86)\embarcadero\studio\20.0\"
Environment
"CG_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_39\\"
"CG_32_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_68\\"
"CG_64_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_68\\"


Include Path
Win32 Classic
$(CG_BOOST_ROOT)\\boost\\tr1\\tr1
$(CG_BOOST_ROOT)

Win32
$(CG_32_BOOST_ROOT)

Win64
$(CG_64_BOOST_ROOT)
----------------------------------------------
一路风雨走过,因为有你们
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2019/8/6 5:28:20
16楼: to lzj
boost,国外有网友提供了编译方法

这些方法在哪里?可否拜读一下,谢谢!!
----------------------------------------------
只有偏执狂才能生存!
作者:
男 lzj7015 (lzj) ▲▲▲▲▲ -
普通会员
2019/8/6 8:26:59
17楼: to nevergrief:
https://github.com/boostorg/build/pull/398
再编译一回,重装了CB,按照要求重装路径无空格。
老兄若编译成功,发一份给我。
----------------------------------------------
-
作者:
男 142857 (142857) ★☆☆☆☆ -
盒子活跃会员
2019/8/9 10:28:30
18楼: 按照chinaz兄的帖子,我们先下载
 http://altd.embarcadero.com/getit/public/libraries/Boost/Boost_1_68_Win64_10.3.2.zip

由于7zip文件需要解压,需要 https://www.7-zip.org/ 下载解压软件
"boost_1_68_redist_win64.zip\redist\boost\win64" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\Redist\boost\win64"
"boost_1_68.7zip\include\boost_1_68" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\include\boost_1_68"
"boost_1_68_lib_win64.7zip\lib\win64\release" to "C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win64\release"

然后再系统环境变量,c++ builder里面
添加
"CG_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_39\\"
"CG_32_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_68\\"
"CG_64_BOOST_ROOT"="c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\boost_1_68\\"

在win64 include path 添加
$(CG_64_BOOST_ROOT)\boost\tr1\tr1
$(CG_64_BOOST_ROOT)

最后执行
注意用管理员身份执行cmd,在cmd命令行粘贴
Boost_setup.bat "HKCU\SOFTWARE\Embarcadero\BDS\20.0\Environment Variables" PATH "$(BDS)\redist\boost\win64
执行完毕后,重新打开c++builer
找到官方例子:
C:\Users\Public\Documents\Embarcadero\Studio\20.0\Samples\CPP\RTL\BoostArchiveDemo\
打开 

BoostArchiveDemo.cbproj
编译执行,完全成功
boost 1.68 win64可以用了
此帖子包含附件:
文件未找到
大小:检测失败
----------------------------------------------
ddddd
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v2.1 版权所有 页面执行54.6875毫秒 RSS