相关疑难解决方法(0)

自动生成二进制文件到bin /而不是src /

我搜索了这个问题的答案,但找不到任何好处.也许他们已经老了,事情发生了变化,所以我再问一次.

我有一个目录结构:

我的项目

  • SRC

  • 箱子

我想要的是,当我在根目录中制作时,二进制文件放在./bin中,而不是混乱./src.但是怎么样?

编辑:我正在使用C++.我的Makefile.am没什么特别的.只是bin_PROGRAM和_SOURCES变量.

当我运行make时,生成的二进制文件被放入./src.我只想把它们放在./bin中.

automake autoconf autotools

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

如何避免使用我的python包构建C库?

我正在使用带有ctypes的C库构建一个python包.我想让我的包可移植(Windows,Mac和Linux).

我发现了一个策略,在安装我的包时使用build_extwith pip来构建库.它创建libfoo.dll或者libfoo.dylib还是libfoo.so取决于目标的平台上.

这个问题是我的用户需要安装CMake.

是否存在避免在安装过程中构建的另一种策略?我是否必须在我的包中捆绑构建的库?

我希望让我的用户继续这样做pip install mylib.

编辑:感谢@Dawid评论,我试图python wheel用命令做一个python setup.py bdist_wheel没有任何成功.

如何使用嵌入式库为不同平台创建我的python轮?

编辑2:我正在使用python 3.4并在Mac OS X上工作,但我可以访问Windows计算机和Linux计算机

python pip cmake python-3.x

20
推荐指数
2
解决办法
3531
查看次数

cmake vs waf for C++项目

我发现了类似的话题:Autotools,Cmake和Scons之间有什么区别?,但我的问题有点其他,我认为答案也可能是其他问题.

我发现很多文章都说waf是unstalbe(API更改),尚未准备好生产等(但所有这些文章都是2或3年).

如果我愿意,应该使用以下哪些构建工具:

  • 创建大型C++(11)项目 - 比方说一个复杂的编译器
  • 与LLVM一起使用
  • 确保它灵活易用
  • 确保它会快速实现
  • 在所有标准平台下编译(基础平台是Linux,但我想在Windows和MacOSX下编译)

阅读了很多文章,我发现了Cmake并且发现了"最好的"工具,但我没有使用它们,很难找到任何比较,这不是很偏颇(比如scons作者的比较)和不是很老.真的

c++ build-automation build cmake waf

12
推荐指数
1
解决办法
7127
查看次数

SCons和Shake之间的差异

我正在研究Python/Haskell项目,我正在寻找替代方案Makefile.明显的选择是Python SCons和Haskell Shake.由于我对其中任何一个都没有经验,我想问一下他们的缺点和优点是否有任何比较.

更新:该项目对构建有一些复杂的要求:

  • 让用户配置类似构建的选项以启用/禁用,工具路径等.
  • 在编译时生成Haskell和Python文件.他们的依赖应该正常工作.
  • 有多个Haskell程序共享大多数源文件.我想这样:
    • 可以单独构建每个,而不是构建不需要的源;
    • 编译多个程序时,源文件不会多次构建;
    • 如果可能的话,在编译期间实现并行性.
  • 检查目标系统及其路径(如一些安装的程序python,flock等等)
  • 检查目标系统的依赖关系,包括Python,Haskell.
  • 根据依赖关系参数化构建 - 如果缺少测试的依赖关系,仍然可以构建项目,跳过测试(并通知用户).

haskell build scons shake-build-system

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