小编Nam*_*arl的帖子

让Clang在Windows上工作

我已经按照以下一步一步的指南进行了操作,经过一些小小的尝试后,我已经设法使用代码编译clang:blocks和MinGW.太好了,所以现在我可以将Clang模块添加到eclipse(为什么有一个IDE,当你可以有四个)并开始编译.

我可以编译一个不使用标准库的简单程序,但不幸的是,当我尝试编译它时:

#include <iostream>
using namespace std;

int main()
{
    cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

首先我得到这个:

..\src\test.cpp:9:10:致命错误:找不到'iostream'文件

所以我将Mingw标题添加到include路径; 然后我明白了:

'致命错误:'找不到位/ c ++ config.h'文件'

这很奇怪.如果该文件不在'bits /'中,为什么MingW会工作?它是内置于编译器吗?没关系,我找到它的实现并在'bits /'中创建文件.

然后我得到了一大堆错误,包括奇怪的错误,似乎暗示clang没有正确实现预处理器,否则我对预处理器的理解是不正确的.

C:\Program Files\CodeBlocks\MinGW\lib\gcc\mingw32\4.4.1\include\c++/cwchar:45:26: error: expected value in expression
#if _GLIBCXX_HAVE_WCHAR_H
Run Code Online (Sandbox Code Playgroud)

还有更多这样的人.应该是这样的

#if defined(_GLIBCXX_HAVE_WCHAR_H) 
Run Code Online (Sandbox Code Playgroud)

要么

#ifdef _GLIBCXX_HAVE_WCHAR_H?
Run Code Online (Sandbox Code Playgroud)

如果他们是MinGW标准库是错误的.

我假设我错误地认为可以放入clang替换gcc并且它不适用于gnu标准库.任何确认或否认这一点,以及证据支持将是最受欢迎的!

那么,有没有人有一个万无一失的方法来在Windows PC上进行clang编译?网上有关于铿锵声的信息,特别是关于窗户的信息.

我真的很想让clang和LLVM工作,因为它们从我读过的内容中听起来很棒.任何帮助,将不胜感激.

谢谢.

c++ mingw eclipse-cdt codeblocks clang

40
推荐指数
4
解决办法
5万
查看次数

Google MapFragment为空白(白色),找不到类'maps.jk'

我正在尝试在(姜饼2.3.5)手机上构建官方Android谷歌地图api v2样本.我加入android-support-v4.jar了官方样本项目.

我从官方教程中取样 <android-sdk>/extras/google-play-services/samples/maps

我在Eclipse中复制了示例应用程序,将google-play-services_lib项目作为Android库引用,并使用Android SDK 4.1.2(api 16)构建整个项目.

不幸的是,我启动应用程序时地图是空白的,我没有任何异常或消息.我唯一得到的是logcat中可疑的行:

    Unable to resolve superclass of Lmaps/a/du; (411)                     
    Link of class 'Lmaps/a/du;' failed                                    
    Unable to resolve superclass of Lmaps/a/ej; (2363)                    
    Link of class 'Lmaps/a/ej;' failed                                    
    Unable to resolve superclass of Lmaps/j/k; (2379)                     
    Link of class 'Lmaps/j/k;' failed                                     
Run Code Online (Sandbox Code Playgroud)

ERR找不到类'maps.j.k',从方法maps.y.ae.a引用.VFY
:无法解析Lmaps/y/ae中的新实例3571(Lmaps/j/k;);

我怀疑我在eclipse 3.8中的项目结构有些搞砸了.

我试过以下的事情(即使是最愚蠢的)也无济于事.

1.无效的api密钥?

我使用keytool生成了一个"debug.keystore"并更新了eclipse首选项(Android/Build/Keystore).当然,我注册了新的密钥库/ SHA1并获得了我在AndroidManifest文件中使用的新api密钥

2.错误的项目目标?

我尝试使用以下目标构建我的两个项目:

  • Android 4.2.1
  • Google Api 4.2.1

3.添加google-play-services_lib作为项目依赖项

我尝试将google-play-services_lib添加为项目依赖项,并在演示构建路径中添加为android库.勾选匹配的导出复选框.

4.在手机上测试google maps api v2

我下载了trulia房地产应用程序,据说在手机上使用v2 api以确保手机与新api兼容

这是示例应用程序的清单

<?xml version="1.0" encoding="utf-8"?> …
Run Code Online (Sandbox Code Playgroud)

android google-maps

16
推荐指数
2
解决办法
1万
查看次数

使用google-guice注入列表的最佳方法是什么?

我有三个类CircleBuilder,SquareBuilderTriangleBuilder实现了ShapeBuilder接口.

我需要使用google-guice 初始化我的FormBuilder并且特别是BuilderList(扩展List<ShapeBuilder>)每个类的一个实例.

什么是最好的方法?

我知道提供者方法和这样的东西:

@Provides
FormBuilder provideFormBuilder() {
    DatabaseTransactionLog instance = new FormBuilder ( <numerous parameters> );

    ShapeBuilder builder = null ; 
    builder = new CircleBuilder( <numerous parameters> ) ;  
    instance.addBuilder( builder ) ;

    builder = new SquareBuilder( <numerous parameters> ) ;  
    instance.addBuilder( builder ) ;

    // And so on

    return instance;
}
Run Code Online (Sandbox Code Playgroud)

但这意味着我必须创建我的FormBuilder手动操作,这违背了使用guice的目的(因为它FormBuilder是我的对象图中的顶部元素).

我希望能够写出这样的东西:

bind(BuilderList.class).to(CircleBuilder.class);
bind(BuilderList.class).to(TriangleBuilder.class);
bind(BuilderList.class).to(SquareBuilder.class);
Run Code Online (Sandbox Code Playgroud)

任何的想法?

java dependency-injection guice

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

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

支持谷歌地图api(v1和v2)的最佳方式是什么?

在我的应用程序中支持android map apis的最佳方法是什么?

谷歌发布了Android谷歌地图api v2,v1仍然存在(并且对旧款手机效果更好).

到目前为止,我看到两个scenarii.

1)两个apks:每个api一个apk

我可以使用多个apk功能google play.

  • 我该如何区分google play?关于opengl的支持?

这种情况意味着每次我想构建我的项目时,我都必须复制/粘贴一些文件,更新其他可能很麻烦的文件.

除非我使用定制的构建过程(使用ant或maven).

  • 有关此事的任何建议?

2)一个apk

,人们可以利用来实现if/else的语句,包括在manifest文件中的声明的API.

  • 有没有人试过这个?

注意:旧版手机的谷歌地图

首先,新的v2 api是基于矢量的,在CPU/GPU上更重(v1 api使用位图图块).

其次,新的v2 api需要opengl 2.0.据说在所有Android设备运行froyo或以后都支持. 不幸的是,事实并非如此.

例如,谷歌游戏/市场无法识别古老的HTC魔术运行姜饼(在自定义ROM上)以支持opengl 2.0.

也许还有更多......

java android google-maps

5
推荐指数
1
解决办法
2654
查看次数

如何在vala中创建线程安全的单例?

我想为我的 vala 类创建一个线程安全的单例实例。

如您所知,如果未正确实现,单例可能会导致线程问题。

glib vala

4
推荐指数
1
解决办法
663
查看次数

无法在 sqlite FTS 表中创建无索引列

我正在尝试使用sqlite 3.8.2创建下表

    CREATE VIRTUAL TABLE IF NOT EXISTS media_fts
        USING fts4 (
            notindexed=media_id,
            notindexed=album_id,
            title,
            artist,
            album_artist,
            album,
            comment,
            lyrics
        ) ;
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,该命令失败并出现以下错误:

 no such column: media_id
Run Code Online (Sandbox Code Playgroud)

你知道出了什么问题吗?

注意:根据这个答案notindexed3.8及以上版本都支持。

sql sqlite full-text-search fts4

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

Gtk.TreeView 无法添加自定义渲染器,断言“gtk_cell_area_has_renderer(区域,渲染器)”失败

我试图通过调用set_attributes将动态自定义 CellRenderer 添加到我的Gtk.Treeview中:

    private void add_column (TrackColumns type) {
        var column = new Gtk.TreeViewColumn () ;
        column.title = type.get_title () ;
        var renderer = type.get_cell_renderer () ;
        column.set_attributes (renderer, "text", type) ;

        view.insert_column (column, -1);
    } 
Run Code Online (Sandbox Code Playgroud)

不幸的是,它失败并出现错误

assertion 'gtk_cell_area_has_renderer (area, renderer)' failed
Run Code Online (Sandbox Code Playgroud)

gtk treeview gtktreeview

2
推荐指数
1
解决办法
599
查看次数

在构建 debian 软件包时,lintian 返回missing-dependency-on-libc 时会发生什么

当我尝试使用 构建我的 vala 应用程序时debuild -i -us -uc -b,包已构建,但lintian抱怨我的控制文件缺少对 的依赖项libc

E: <my app>: missing-dependency-on-libc needed by <path to my binary>
Run Code Online (Sandbox Code Playgroud)

我的依赖部分应该添加什么?

Source: <my_app>
Section: x11
Priority: optional
Maintainer: <me>
Build-Depends: cmake (>= 2.8),
               debhelper (>= 9),
               libgee-0.8-dev,
               libglib2.0-dev,
               valac (>= 0.22)
Standards-Version: 3.9.5
Homepage: <my_website>
Run Code Online (Sandbox Code Playgroud)

unix debian packaging vala

2
推荐指数
1
解决办法
1820
查看次数

有没有办法*不*坚持与锡耶纳的领域

我使用带有谷歌引擎的siena.我有一个带有字段(命名secret)的模型类,我不想保留它.(我不希望在Google数据存储区中创建列)

有点像

Class person {
   @Id 
   public Long id ; 

   public String name ; 

   @Ignore
   public String secret ;

}
Run Code Online (Sandbox Code Playgroud)

该领域secret必须是公开的.

你有什么想法实现这一目标吗?

java google-app-engine siena

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